网站加载速度非常慢


Answers:


36

首先确定是前端渲染还是执行缓慢的脚本。在浏览器中的开发人员控制台中检查“ 第一个字节时间”。这是脚本在服务器上处理所需的时间

在此处输入图片说明

在屏幕截图中,您可以看到它非常低(200毫秒),因此在这种情况下,问题将不在服务器上,而是在前端。现在,如果结束了,您可能要优化一秒钟。

在您购买一些无法解决的增强器和额外缓存之前,请先使用补丁程序或创可贴来隐藏真正的问题,然后尝试弄清楚到底是什么慢。您也可以为此使用多种工具。

慢查询

Magento可能在数据库上非常繁重,因此启用慢查询日志可能是一个不错的起点。看看这篇文章如何打开它。该日志将显示所有耗时超过X秒的查询。

分析器

探查器可帮助您深入了解代码中发生的事情。对于Magento,我建议从Aoe_Profiler开始。只需安装并打开它。在前端,它将为您提供如下输出:

在此处输入图片说明

展开结果并检查红色大块。这些是花了代码的特定部分进行处理的实际时间。请注意所有占用大量时间或内存的第三方模块。

另一个伟大的工具是黑火。由于Aoe_Profiler是Magento中的一个模块,因此不会显示基础的php进程,并且在具有许多模块的大型安装中可能会崩溃。服务器上出现黑火。通过黑客马拉松,我们设置了一个可以使用的带有黑火游民箱。只需将您的项目放在那里并启动它。检查黑火网站以获取更多信息如何使用它。

最后一个可能是我的最爱:New Relic

不幸的是,尽管他们为专业帐户提供免费试用,但它是一项付费服务​​。在将其安装到服务器上并连接配置文件后,请等待几个小时以使数据输入。请确保商店中有流量。

在此处输入图片说明

New Relic也有一篇有关如何调试Magento的博客文章,我建议这样做。还请检查ProxiBlue New Relic模块,以获取New Relic中的额外Magento数据。

基本上,这将向您显示所有上述功能,例如慢速查询,PHP中的进程等,并以简单的图形和表格显示。这应该使您对安装中的问题有很大的了解。

从这里开始 ,您已经知道造成性能低下的原因,可以继续解决它。在类似这样的论坛或Google上查看Magento缓慢的部分或模块。许多问题是众所周知的,而其他问题以前已经解决。或者,如果找不到解决方案,请在此处发布您的问题,并将您的发现包括在问题中


太好了。谢谢您对“黑火”的见识
拉杰夫·托米·托米

11

Magento中的站点速度优化是非常广泛的话题。这是一个可以帮助您的链接,

http://www.gxjansen.com/blog/101-ways-to-speed-up-your-magento-e-commerce-website/

总结一下

您需要集中精力在两个方面:1.前端优化2.后端优化

前端优化

  1. 您可以安装Fooman Speedster- http://www.magentocommerce.com/magento-connect/speedster-by-fooman.html并启用css,js合并

  2. 在admin中启用Magento块缓存。

  3. 启用Gzip压缩

后端优化

  1. 您可以配置Varnish进行全页缓存

  2. 在后端启用复杂功能。

  3. 为目录(类别和产品)启用平面结构


1

我发现了一些小技巧,可以帮助您加快网站的运行速度:

通过将其添加到 /template/page/html/head.phtml

<script>
function init() {
var imgDefer = document.getElementsByTagName('img');
for (var i=0; i<imgDefer.length; i++) {
if(imgDefer[i].getAttribute('data-src')) {
imgDefer[i].setAttribute('src',imgDefer[i].getAttribute('data-src'));
} } }
window.onload = init;
</script>

然后/template/catalog/product/list.phtml更改您的图像链接,如下所示:

<img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAIAAACQd1PeAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4AQQATUqB0EhKgAAAAxJREFUCNdj+P//PwAF/gL+3MxZ5wAAAABJRU5ErkJggg==" data-src="<?php echo $this->helper('catalog/image')->init($_product, 'small_image')->resize(135); ?>" width="135" height="135" alt="<?php echo $this->stripTags($this->getImageLabel($_product, 'small_image'), null, true) ?>" /></a>

另一个是“ Pre Gzip”所有的javascript和CSS文件,然后将其添加到中.htaccess

    <ifModule mod_headers.c>
    ##### serve pre gziped files #####
    # Rules to correctly serve gzip compressed CSS and JS files.
    # Requires both mod_rewrite and mod_headers to be enabled.
    # Serve gzip compressed CSS files if they exist and the client accepts gzip.
    RewriteCond %{HTTP:Accept-encoding} gzip
    RewriteCond %{REQUEST_FILENAME}\.gz -s
    RewriteRule ^(.*)\.css $1\.css\.gz [L,QSA]

    # Serve gzip compressed JS files if they exist and the client accepts gzip.
    RewriteCond %{HTTP:Accept-encoding} gzip
    RewriteCond %{REQUEST_FILENAME}\.gz -s
    RewriteRule ^(.*)\.js $1\.js\.gz [L,QSA]

    # Serve correct content types, and prevent mod_deflate double gzip.
    RewriteRule \.css\.gz$ - [T=text/css,E=no-gzip:1]
    RewriteRule \.js\.gz$ - [T=text/javascript,E=no-gzip:1]
</IfModule>

1

Magento是一个很棒的电子商务框架。它具有大量功能,您实际上可以构建可扩展的电子商务平台。我在最新项目中使用了Magento,并且遇到了速度问题。经过研究和修改后,我确实加快了我的网站的速度。

服务器优化

  • 使用Nginx作为Web服务器
  • 使用主从副本将MySQL移至其他服务器。如果您在AWS上,请使用RDS for MySQL。
  • 优化Nginx和Php-fpm
  • 启用gzip压缩
  • 启用浏览器缓存

Magento设置

  • 禁用所有不必要的扩展
  • 合并CSS和JavaScript文件
  • 禁用日志
  • 清理Magento日志表
  • 启用外部全页缓存

安装Redis缓存,APC操作码和全页面缓存扩展 -安装PHP加速器-安装Redis缓存进行后端和会话缓存-安装Lesti FPC

图片优化和YSlow- 网站的平均页面权重的平均56%由图片组成。优化产品图片可以极大地提高页面的速度,因为这可以减少页面的下载时间。-通过gtmetrix或Pingdom扫描您的网站,并遵循其优化建议。

使用CDN

您可以在我的网站上阅读有关此内容的详细信息:http : //www.ranjeetvimal.com/tips-to-speed-up-magento-1-9-performance/


0

如果您使用的是共享主机环境,则由于无法完全控制服务器并且该资源已由其他多个网站使用,因此很难实现良好的速度,但是如果您使用的是专用服务器并且具有完全的管理员访问权限,请尝试使用清漆缓存。

您可以做的其他事情-

1,合并JS和CSS文件

Magento admin -> System Configuration -> Developer -> Under Javascript Settings”, change Merge Javascript Files to YES.
Magento admin -> System Configuration -> Developer -> Under CSS Settings”, change Merge CSS Files to YES

2.在.htaccess文件中启用输出压缩,使标题过期并禁用ETag,请参阅此/programming//a/14745165/3114253

  1. 尽可能使用CDN

  2. 使用Magento的编译功能。据报道,它可以将性能提高25%-50%:“系统”>“配置”。>工具>编译。

  3. 显示小号 产品列表页面中产品的名称。

  4. 启用平面目录。

在Magento管理员界面中,转到系统>配置>目录。在“前端”下,将“使用平面目录类别”更改为“是”。如果需要,在“前端”下,将“使用平面目录产品”更改为“是”。清除缓存。


0

如果您尝试加快前端速度:

  • 将CDN用于图像(!)并减小图像尺寸
  • 连接CSS和JS
  • 在结束body标签之前加载JS
  • 尽可能使用异步js加载
  • 使用图片精灵或图标字体而不是数千个png文件
  • 减少未使用的CSS
  • 为您的CSS 生成关键路径

后端:

  • 使用额外的缓存,例如清漆(TTFB <15ms)或LestiFpc
  • 分析您的页面加载和复杂的MySQL查询并进行修复
  • 通过.htaccess激活gzip,etags,浏览器缓存等
  • 在单个服务器上使用MySQL

请不要使用您的邀请网址链接到付费服务,以获取个人利益。
7ochem '16

0

要提高magento网站的速度,您可能需要先使用www.gtmetrix.com或Google Page Speed Insights对其进行扫描:

Google Page Speed Score

然后您可以决定可以做什么。在大多数情况下,它可以归结为:

34种方法中加速M1和M2

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.