我正在运营一个用magento开发的电子商务网站。我在服务器上有512mb RAM和2.6 core2duo。当我在我的网站上一次发送50个请求时,除少数请求外,它没有响应。我也安装了清漆。我想知道我想为我的网站做的最佳设置。我已经看到PHP-FPM占用了太多的内存和CPU。
答案 0 :(得分:3)
我们在生产机器上使用ubuntu 12上的nginx和php5-fpm(VCenter虚拟机,4核,8 GB内存)。我们的magento安装主题和扩展。前几天,我在VMWare盒子上安装了一切,默认安装了Magento 1.12 EE(我需要在bug上调出它们)。我只是这样说,所以你知道我们在生产环境中有nginx和php5-fpm。
你所问的是我认为每个人都在努力使用nginx和php fpm ......从中榨取更多性能。我的意思是,如果我们不想让网站性能提升,我们可以使用apache和php吗?有很多答案,意见和案例库解决方案,但我会指出你用来配置我的系统的指南......
取自博客评论:
......然而,问题确实是Magento,而不是配置 的服务器。 Magento太大了,太重了 环境。 Magento托管是一项非常乏味和令人不愉快的任务。
它可能无法解答您遇到的每一个问题,但确保您做的事情有很多好处...比如设置worker_processes =您拥有多少个核心等。
就我个人而言,有一件事情仍然是服务器负载非常高(每秒超过5-10次点击)处理器受到重创。我还没有完全确定问题所在,但是添加一个核心并碰撞撞锤会造成很大的影响。我可能会增加ram,但此时我们的用户群没有看到任何网站性能问题。
(从其他网站发布博客文章:)
Magento大量使用磁盘子系统 操作。磁盘I / O是CPU的最大瓶颈 (核心),以达到最佳的Magento性能。
这就是为什么Magento在云环境中表现如此糟糕的原因 存储在SAN上与无数其他用户共享并处于压力之下 在随机时间导致不一致的表现。
SSD(固态硬盘)在本地配置为RAID1 + 0磁盘阵列 在同一RAID配置中优于15.5K SAS驱动器。
本地数据库也是Magento
达到最佳性能的关键远程数据库引入了延迟到期的系统调用和网络 饱和。如果必须使用远程数据库,则应确保 您在私有VLAN上,而不是共享过饱和的网络 连接,即使是最大的托管服务提供商也很常见。 在最好的网络环境中,远程数据库不会像 由于各种原因,快速作为本地数据库。
CPU速度和CPU数量也非常重要 最佳的Magento性能。你可以了解它的力量 您在以下URL使用的高端CPU - 如果CPU是 未在此处列出,它不被基准视为“高端” “PassMark软件”;
http://www.cpubenchmark.net/high_end_cpus.html
基于性能的Web服务器(如LiteSpeed)使用多个 CPU(核心)和MySQL服务器一样,配置正确。 使用基于性能的Web服务器可以显着提高您的性能 针对Apache Web服务器软件的应用程序性能。
尝试重写或转换/编译Magento不是解决方案 - 它是 最好是一个绑带。您将无法进行任何升级 (没有大量的开发时间来重写和测试 你的改变)和每次升级我们继续看到速度 改进。 Magento的核心变化永远不应该被执行,核心 不应该对Magento进行更改 - 这会使OOP失败 Magento采用的模型。
最后,正如我们之前所说,Magento无法达到最佳状态 没有对基础设施进行大量投资的绩效 应用程序运行。如果你正在考虑运行Magento 并希望在预算托管服务提供商那样做 你根本不能也不会达到最佳性能 应用。
Magento因其复杂性而需要资源 - 您不能 提供预算托管服务提供商所需的资源 这类硬件系统的成本并不便宜。
答案 1 :(得分:0)
你应该增加超过512米的内存,因为nginx + php-fpm和varnish运行使用的不仅仅是系统内存。我进行溢出和php进程无法执行