这个问题可能有点长而且具体,但我一直试图找到以下问题的确凿答案大约一个月,我还没有找到决定性的信息。一个特定的问题很难概括,如果我遇到类似的问题,即使特定的服务器配置与我的不同,它也会提供信息。
我的服务器是运行cPanel(WHM)的VPS,PHP模式是SuPHP。该服务器拥有768MB的RAM,并托管了大约12个网站。有些内存非常耗费内存,而其他内存几乎不使用任何内存或CPU。
我最近为我的一位客户安装了一个Magento商店,并且一直在尝试不同的设置以实现性能提升。在我安装xCache并将PHP配置为以FCGID或DSO运行之前没有任何帮助(因为xCache不能与SuPHP一起使用)。这种配置将性能提高了2/3(意味着页面加载速度提高了约3倍)。
唯一的挫折是,几分钟后,服务器内存不足,我不得不重置它。所以现在我回到SuPHP,事情还不错。
即使我禁用了xCache并且只保留了FCGID或DSO模式而不是SuPHP,服务器也会在大约30分钟内耗尽内存。因此,罪魁祸首似乎是PHP正在运行,而不是SuPHP。
我还注意到,当我从不同的WHM定义的用户打开一个新的前端URL时,我的内存使用率上升了,但是当我从同一个WHM用户帐户打开多个URL时,用法似乎保持相当稳定
到那时:
另外,我正在考虑更新其他一些服务器以使用xCache。 您会为以下服务器推荐什么配置设置和PHP模式(SuPHP,DSO或FCGI)和xCache?
答案 0 :(得分:5)
由于您正在运行cPanel - 您可以轻松安装Munin(图形插件)。转到WHM,在搜索框中键入插件并安装Munin。
让它收集大约一周的一些统计信息,然后你就可以很好地了解内存使用情况。
SuPHP实际上是CPU密集型的,因此您需要切换。
我们建议在使用cPanel时使用PHP-fCGI,这是一个替代品并且运行良好。我们使用Eaccellerator进行编译 - 因为我们已经测试了所有其他选项(APC / Xcache)并且发现它是最快的。我在这里详细介绍一下http://magebase.com/magento-tutorials/magento-session-storage-which-to-choose-and-why/comment-page-1/#comment-1986
如果你遇到OOM(内存不足)错误,那么你可能会发现你在内存上过度使用;这是两件事的结果(我们只关注PHP):
你需要限制其中一个。对于像你这样的小型VPS,你将要努力使用768MB RAM。我们从不提倡使用VPS,因为您太过限制无法有效地运行Magento。
根据您的规格,2.4Ghz,8GB RAM服务器将无法运行20个“大型”Magento站点。为了更好地理解这一点,通常情况下(对于共享主机),我们在3.3GHz,16GB RAM服务器上最多放置8个存储区。
我建议寻求专业人士的帮助,以便正确设置您的服务器,因为您将找到有关Magento优化的大量相互矛盾的信息。