我尝试了所有可能的方法来加速magento网站。但是我没有从中获得任何结果。
我遵循了以下一些方法..
启用所有Magento缓存层。
启用gzip压缩。
安装GTspeed Plugiin并优化图像,js和CSS。
但没用。我的网站的响应率仍然很低。
我在Magento中尝试了编译选项。但它并没有变化,当我在一段时间之后点击编译过程时它会变得
500内部错误。
以下是我的Magento网站:http://shyamwerragrandmart.com/
我还有另一个问题。在我的网站上尝试将任何产品添加到购物车时,它几乎需要30秒-1分钟才能添加到购物车中(使用ajax)。这必须减少。我能为此做些什么。?
我在这里使用Go Daddy Web托管服务。
具有无限带宽和无限空间。
请建议我提高网站效果的更好选择。
答案 0 :(得分:5)
您可以通过以下步骤进行Magento优化:
答案 1 :(得分:2)
启用Magento缓存
这是优化的第一步:启用Magento管理面板中的所有可用缓存。
压缩图片
许多人忘记了图像(PNG,JPG)可以被压缩,这会降低浏览器和网络服务器之间的带宽。不仅Magento皮肤使用的图像需要优化,而且目录图像也需要优化。各种工具允许您压缩批量图像,例如在线工具Smush.It。
禁用不需要的Magento模块
通过禁用您不需要的Magento模块,需要更少的资源 - 就这么简单。可以通过Magento管理面板中的配置禁用模块,也可以通过编辑app / etc / modules中的XML文件来禁用模块。例如,禁用Mage_Log,它对每个请求执行查询,但如果您使用外部程序收集站点统计信息则不需要。
为小型网上商店启用平面目录
对于较小的网上商店,从复杂的EAV结构切换到平面目录可以节省时间。这种优化是可疑的,取决于许多参数,所以不要轻易采取这一步骤。
符合W3C
虽然可以说这对于HTML5的出现并不那么重要,但事实是,如果您的网页充满了丑陋的错误,浏览器将难以解释它。如果您坚持W3C合规性,则确保浏览器引擎可以轻松解析您的HTML代码。
一般压缩输出
通过启用PHP设置zlib.output_compression,PHP生成的输出在发送到浏览器时会被压缩。这节省了带宽。您也可以使用Apache mod_deflate模块,而不是使用它,这也允许压缩非PHP输出(CSS,JavaScript,其他纯文本文件)。
配置PHP选项
大多数PHP设置实际上并不影响Magento的性能,只是设置了一定的限制。例如,memory_limit和max_execution_time等设置不会增加页面加载,只是确保某些操作不会超时或遇到内存问题。
会话存储空间
使用Magento,会话可以存储在文件或数据库中(通过配置app / etc / local.xml)。哪个选项表现最佳,实际取决于托管环境的设置方式。如果MySQL数据库运行良好,数据库中的会话存储可能会使您的站点受益。但如果没有正确设置MySQL,最好的选择可能是文件。
使用PHP加速器
通过操作码缓存,可以固定PHP执行。有各种PHP加速器可以完成这项工作(APC,ZendOptimizer +,eAccelerator,XCache)。 APC和ZendOptimizer +都与Magento完美配合。
调整PHP realpath_cache
通过将PHP realpath_cache_size调整为例如128K(默认为16K)并将realpath_cache_ttl调整为86400,事情可能会加速。确保没有内存不足,因为每个Apache子节点都将使用配置的缓存大小。
使用Apache mod_expires
通过告诉浏览器哪些文件在缓存中保留多长时间,您可以优化浏览器缓存。例如,JavaScript文件的变化往往比CSS文件少得多(至少在网站的第一阶段),但也许在网站运行平稳几个月之后,您可以最大化到期日期。
小心404错误
每次找不到文件(如样式表或图像)时,都会生成404错误。因为Magento的默认404被Magento本身的应用程序捕获,这导致Magento应用程序在每遇到404时启动。检查Apache日志以确保解决所有404错误。
禁用Magento记录
在Magento配置中,您可以在Developers-tab下启用日志记录。这取决于Magento模块,这可能会导致需要将更多日志写入文件系统,从而减慢您的商店速度。因为日志使用时只需要调试日志功能,所以最好完全禁用日志记录。
MySQL表优化
通过phpMyAdmin,您可以在特定的Magento数据库表上执行命令OPTIMIZE TABLE。当桌子混乱时,这可以提高性能。这不仅可以计算复杂的EAV表,还可以计算经常使用的常规MySQL表(例如,core_config_data)。
合并CSS和JavaScript
通过将所有CSS和JavaScript文件合并为一个大文件,浏览器只需要一个HTTP请求即可获取此内容。这节省了带宽。对于这种合并,可以使用FooMan Speedster模块。 Magento 1.4包含一个合并CSS的选项,而默认情况下会合并JavaScript文件。
除了合并之外,FooMan Speedster还提供了一个选项:它从输出中删除了空格,但是当压缩已经应用于CSS时,这个选项就不那么需要了。
使用Magento编译器模块
Magento编译器模块限制了PHP在查找PHP文件时必须搜索的目录数。这减少了PHP执行时间,从而加速了Magento应用程序。
警告您在更改Magento系统时需要小心,同时启用Magento编译器。只有在(暂时)禁用编译器时才应进行升级。
一个非常巧妙的技巧是为了极大地加速事情,专门为includes / src文件夹创建一个tmpfs-mount。请注意,此tmpfs-mount必须至少为100Mb - 最好是200Mb。
MySQL服务器调整
默认的MySQL设置足以运行一般的托管环境,但并非全部针对Magento进行了优化。调整query_cache_size等设置可以大大提高性能,但也很危险,因为它极大地依赖于其他变量(数据库数量,每个数据库的表数,查询数量,峰值使用情况)。
通过CDN提供静态内容
静态内容(如图像,CSS样式表或JavaScript文件)可以通过其他针对静态内容进行优化的服务器提供。例如,可以使用CDN,以便始终从最接近访问者的位置提供静态内容。这对于为全球客户提供服务的网上商店至关重要。
禁用本地Magento模块
如果您的站点不需要本地Magento模块,您可以选择全部跳过搜索本地模块。在app / etc / local.xml文件中,您将找到一个允许您这样做的XML标记。
小心使用HTTPS
每次在Web服务器和浏览器之间使用SSL时,都会在双方添加加密和解密过程。带宽也有轻微的开销。如果您为所有页面或仅几页禁用SSL,Magento站点的运行速度会稍快一些。但是,与本页中的其他胜利相比,这个“胜利”是如此之小,只应谨慎处理。获得的带宽并不重要,而现在几乎所有计算机都具有CPU功率,加密/解密过程以微秒为单位。
云中的Magento
虽然CDN可用于优化静态内容的带宽,但Magento应用程序也可以通过使用云计算以相同的方式进行优化。
基于内存的动态数据文件系统
通过在基于内存的文件系统(如RAMdisk或tmpfs)上存储动态数据(var / cache,var / session),可以减少磁盘I / O.
禁用Apache htaccess文件
当允许使用htaccess文件时,Apache需要检查其路径中的每个目录以查看是否存在htaccess文件。通过将Apache配置指令从htaccess文件移动到VirtualHost配置文件,并同时禁用htaccess文件,可以缩短Apache执行时间。在大多数情况下,此提示可能仅适用于专用服务器。
使用Nginx或Litespeed
虽然Apache Web服务器的配置非常灵活,但还有其他Web服务器可以更好地优化内存使用:通过用Nginx或Litespeed替换Apache,您可以进一步加速Magento脚本。两个Web服务器都需要手动配置以允许SEF URL。
对图片使用lazyload
加载页面时,访问者通常会等待该页面上的图片加载。根据这些图像的数量和大小,这可能需要一些时间。您可以添加LazyLoad JavaScript效果,以确保仅加载可见图像(在浏览器屏幕中),而只有在访问者向下滚动时才加载剩余图像,而不是在加载页面时立即加载图像。
最小化Apache日志记录
如果最小化Apache日志记录,则每个传入请求都需要较少的文件操作。当然,减少记录也意味着在出现问题时缺乏洞察力。另一种方法是优化存储Apache日志的文件系统。默认情况下,Apache会记录到/ var文件系统 - 但是不需要为该文件系统启用日志记录等功能。
参考:http://magentotutorialbeginners.blogspot.in/2014/05/magento-performance-improvement.html
答案 2 :(得分:0)
通常,共享托管不是Magento的最佳托管类型。尤其是Go Daddy,他们是出了名的坏人。找到别的东西,如果去VPS或专用主机路线太多,Nexcess有不错的共享主机方案。
其他帖子涵盖了大多数主题,但一旦确保了可靠的托管,请尝试使用整页缓存。
无耻插件:我推荐使用Brim的整页缓存http://ecommerce.brimllc.com/full-page-cache-magento.html。也许我写的时候有点偏见,但是它在企业和社区上运行的优秀FPC,有打孔,并且可以通过管理面板完全配置。