A-A+

Magento使用APC加速的小提示

2012年01月24日 灵犀一指 Magento使用APC加速的小提示已关闭评论 阅读 944 人 次

APC主要有两方面的作用:一是作为PHP字节码的缓存(php bytecode cache),避免每次访问页面重复编译PHP脚本代码,这样既缩短了响应时间,又节省了宝贵的CPU资源。 据Magento公司内部测试,使用了APC做为PHP字节码缓存后,对于不同页面,Magento性能可提高20%~100%。同时Magento在APC支撑下比eAccelerator性能高出一丁点3~5%。

值得注意的是:开启了APC、eAccelerator等php bytecode cache后,则需要关闭Magento的文件编译功能(位于Magento Admin->System->Tools->Compilation),否则Magento性能不升反降。

APC另外的一个作用是作为Cache backends。默认情况下,Magento把缓存数据存放在文件中,为了提高存取效率,也可以存放在诸如APC,Memcached之类的内存对象缓存系统中。 Magento公司内部测试结果显示:APC比Memcached的表现稍好一些,但也仅仅比存放在文件系统中快了3~5%。有点叫人失望!

也有人反映用APC做Magento的Cache backends,系统反而变慢了些。这个要根据个人具体测试结果,来决定是否启用APC作为Cache backends。启用很简单,安装好APC后,只需在Magento中app/etc/local.xml中加入下面的代码:
[php]
<global>
<cache>
<backend>apc</backend>
<prefix>MAGE01_</prefix>
</cache>
</global>

[/php]
如果有多个Magento站点用到APC,则需分别设置不同的prefix。由于Memcached具有分布式的功能,所以对于单一WEB服务器来说,推荐选用APC,因为APC还具有php bytecode cache功能。对于多个WEB服务器节点,则需使用Memcached。

最后注意的是,一定要给APC分配最够的内存,否则将降低系统性能。

标签:

评论已关闭!