Php 非常担心Magento的表现

Php 非常担心Magento的表现,php,mysql,apache,magento,Php,Mysql,Apache,Magento,我目前有1个magento应用程序运行3个不同的商店: (这个还在建设中) 此存储的数据库大小为370MB。这些商店共享9000个SKU,并且每个商店都有1k到2k个分组产品(与SKU关联) 运行ApacheAb基准测试工具时,我每秒收到的请求数低至0.29个,我认为即使对于magento商店来说,这也是一个非常非常低的数字 不过,最大的担忧是后端。目前有5个人通过后端更新和插入新产品,更新/插入一个产品需要4分钟。这是对时间的极大浪费,我一生都无法解释这一点 以下是我的服务器资源:

我目前有1个magento应用程序运行3个不同的商店:

  • (这个还在建设中)
此存储的数据库大小为370MB。这些商店共享9000个SKU,并且每个商店都有1k到2k个分组产品(与SKU关联)

运行ApacheAb基准测试工具时,我每秒收到的请求数低至0.29个,我认为即使对于magento商店来说,这也是一个非常非常低的数字

不过,最大的担忧是后端。目前有5个人通过后端更新和插入新产品,更新/插入一个产品需要4分钟。这是对时间的极大浪费,我一生都无法解释这一点

以下是我的服务器资源:

  • 处理器:AMD Athlon X2 3400+(2x 1.8Ghz)
  • 内存:4GB
  • 磁盘:2x500GB
我正在使用eAccelerator和Memcahed运行Debian Lenny Apache 2.0、PHP版本5.2.6-1+lenny16。(您可以查看所有信息)

下面是我的Apache、MySQL和PHP配置文件

我不是一个服务器管理员(虽然我负责所有的网站和服务器本身),所以这不是我的“海滩”。我的问题是,这是我当前资源的工作方式,还是我在配置中遗漏了一些重要的东西


我意识到这可能看起来像是我在寻找“人工直升机”,但这不是我的意图。我只是厌倦了一次又一次地尝试新东西,似乎无法让它顺利运行。

Magento需要大量资源。后端结构有点慢,很难优化。但我建议从csv/xml导入所有产品,而不是手工操作。你会发现很多关于这个的教程

要优化前端,以下是一些提示:

  • 请参考GTMetrix以获得性能指标:您的主页太大。第一次加载时,页面不应超过1MB。您应该使用延迟加载、优化图像等来加快速度

  • 有些技巧允许有非常非常非常好的性能,但你需要一个更大的服务器,如果你的网站产生流量,你可以每月获得500美元的托管费,你可以找到非常强大的服务器配置,如6个四核、48GB RAM、SSD磁盘、10GB/s网络和无限带宽

  • 如果您选择更好的托管解决方案(使用更强大的服务器),您可以通过将最常用的目录(如/var和/include/src,如果您使用编译)作为RAM来获得性能。仅当您不每天对代码进行更改时才使用编译,如果您不这样做,将编译+装载/include/src作为RAM将给您带来非常好的性能增益

  • 我不太了解每个加速器和memcached,我使用APC,用清漆替换端口80。这给了我的网站额外的速度

让Magento快速运行是优化每个方面的日常工作,没有魔术


在这方面,

对于像Magento这样的站点来说,您的缓存大小太小了。我运行一个类似的站点,我们有256mb的缓存。使用16mb,您将不断遇到缓存转储

您的服务器资源对于您的负载来说是很好的,假设Magento旁边没有运行任何其他大型服务器。这是一个猪,但它没有那么糟糕,4gb的内存已经足够了


我会暂时禁用你的缓存,看看是否有什么改进。我还建议您查看Magento中的商店配置,因为您可能没有最好的缓存配置-Magento的缓存设置复杂且不透明。

我为一家公司进行web开发,该公司在7个站点上处理超过30k的产品,我们通常尝试避免使用管理员来上传/编辑产品。我们用于上传和编辑。我们对这个产品很满意。
您使用的是ligtspeed服务器吗?

如果您完成了开发,我将禁用mysql上的慢速查询日志记录(从my.cnf复制的行):

您没有发布您的.htaccess文件,其中一些php和apache设置可以被覆盖


是否已将缓存设置添加到/app/etc/local.xml?如果没有,请查看/app/etc/local.xml.additional并应用最适合您的内容

如果您正在运行虚拟服务器,可以考虑使用Nginx替代Apache。我发现这可以提高一些性能。还可以考虑实现某种缓存。我建议使用Memcached或Redis(如果您可以让它运行的话)。这无疑会给您带来巨大的性能提升


Magento是一个数据库密集型系统。根据您网站的繁忙程度,您可以添加一些ram,以确保您有足够的内存来运行进程。

简单的答案是:服务器电源不足。无论您如何配置,都需要升级以获得更适合Magento的环境

资料来源:

请注意,上面列出的CPU是非常高端的CPU,其处理能力是AMD双核芯片的10倍左右。 我的笔记本电脑CPU是英特尔酷睿i7 2.2GHz四核处理器,基准约为5000。我建议您从主机上选择5000以上的CPU


16GB的RAM和SSD也似乎是合理的,因为现在成本不高。

我知道这条线是古代互联网时代的。我只是想补充几点,我认为这对大多数所有者/开发者来说是最相关的。Magento性能可能是一个需要考虑的深刻话题,但希望了解一些要点会有很大帮助:

  • 您越多地利用缓存(操作码缓存、MySQL缓存、整页缓存等)硬件战就越不重要。这听起来很棒,因为你目前使用的硬件,很抱歉,是漂亮的terri
    log_slow_queries        = /var/log/mysql/mysql-slow.log
    long_query_time = 2