如何评估我的托管服务提供商声称“针对Magento进行了优化”?

时间:2011-12-01 17:31:00

标签: php optimization magento hosting

我目前负责运行,修改和调整Magento安装。我对目前的托管计划不满意,我正在寻找替代方案。我看到几家主机提供商宣称他们为Magento优化了他们的服务器(例如Nexcess,MageMojo),但他们似乎都缺乏技术细节。对于服务器来说,为Magento优化它与优化任何其他重量级PHP / MySQL应用程序有何不同?

我目前的理解是,由于其EAV数据模型及其庞大的XML配置文件,Magento的性能几乎总是受I / O约束 - 但我的理解是,大多数其他PHP / MySQL应用程序都是如此。 RAM和核心基本上比SSD空间便宜。

我如何判断这些“优化”是否值得以Magento为导向的托管服务商收取的费用?对于“优化”的主张是否存在技术基础,或者对Magento进行优化是否与在任何其他PHP / MySQL应用程序上优化性能相同?


注意:由于这个问题违背了网站的指导原则,让我们明白几件事情:

  • 一个正确的答案会说“不,Magento不是一个不寻常的PHP / MySQL应用程序,将它扩展到10,000个用户只是将Drupal,WordPress或Joomla!扩展到那个级别”或“是的,Magento有以下特征需要应用非平凡的配置更改,优化技术或服务器调优,您将不会使用其他任何PHP / MySQL应用程序。“所以这个问题确实存在明确的正确答案。
  • 我不打算自己实际实现这样的调整:如果我这样做,我可能会问服务器故障。我问的是Magento的胆量,我问的是为什么它执行它的方式,并要求与类似应用程序的内部进行比较,所以我问Stack Overflow。

2 个答案:

答案 0 :(得分:2)

Magento是一个消耗cpu的野兽,受其内部复杂的多层对象架构的影响更大(它允许“magento核心代码”之外的非常重要的自定义,但它也实现了Zend Framework的近乎完整的外观,它本身并不为人所知是轻的)+伪的集合代码,它实际上不是它的底层复杂但不是那么糟糕的EAV DB模型。

因此,为托管商优化magento的一个好方法是提供:

  • 像APC这样的PHP字节码优化器(因为magento中的单个调用可能会导致正在执行的数万个PHP行代码)
  • 一个memcached来优化结果& magento使用的会话存储(希望magento具有配置选项,使其能够将memcached作为缓存引擎)
  • 理想情况下是一个清漆整页缓存代理,但要注意,这需要非常棘手的清漆配置才能让magento正常工作。

整页缓存将真正释放php代码执行的负载以显示页面。 memcached将快速访问最后已知的结果&会话数据 字节码优化器将减少php代码执行服务器端的负载。

然后,数据库本身必须使用符合CPU核心和放大器的InnoDB设置以更“标准”的方式进行优化。所有其他众所周知的mysql优化。

答案 1 :(得分:2)

除了正常:

  • php version
  • apc,缓存
  • 内存,CPU,磁盘空间,带宽等

像magento这样的东西有PCI compliance的问题。因此,您需要了解数据中心的物理安全性,mysql设置(确保它们不是共享的sql服务器)等。最好是获得专用服务器,或者至少是vps,以便隔离您的资源/数据来自其他所有有助于安全的人。

我曾与一些声誉良好的Magento托管服务提供商合作,所以如果你有一些你正在退房,请告诉我,我会告诉你我诚实的想法