提醒:本文最后更新于 4146 天前,文中所描述的信息可能已发生改变,请仔细核实。
最近在郑杰的提醒下,查看了Zend OPCache。以前Zend Optimizer+还是比较出名的,后来太多的选择和一些其他原因,弃之不问了。
配置OPC还是比较简单的,eAccelerator被我干掉了,重复的功能。配置如下:
wget http://pecl.php.net/get/zendopcache-7.0.2.tgz tar xzf zendopcache-7.0.2.tgz cd zendopcache-7.0.2 /usr/local/php/bin/phpize ./configure --with-php-config=/usr/local/php/bin/php-config make make install
接着呢,配置下php.ini,在最后加上:
[opcache]
zend_extension=opcache.so
opcache.memory_consumption=128
opcache.interned_strings_buffer=8
opcache.max_accelerated_files=4000
opcache.revalidate_freq=60
opcache.fast_shutdown=1
opcache.enable_cli=1
opcache.enable=1
zend_extension=opcache.so
opcache.memory_consumption=128
opcache.interned_strings_buffer=8
opcache.max_accelerated_files=4000
opcache.revalidate_freq=60
opcache.fast_shutdown=1
opcache.enable_cli=1
opcache.enable=1
一般来说,按照以往的经验,如果加在ZendGuardLoader之前会稳定多了。
看张运行半个钟的状态图:
如图所示,128MB的最大内存使用,只用了20%左右。不过命中率还蛮高的,但不要高兴,在一定的空闲时间(可指定),这些cache都会被reduce。
比较高兴的是,通过查看Wordpress内置函数的使用,更加深入的研究WP_Object_Cache,解决了上次一些页面缓存失效问题。
对那些单页面超过正常量(50左右的查询量)查询的,甚至上万查询量的(上次有说过),都降回正常量。
合并优化插件、内置插件于主题、主题效率算法,在一些重要(常用)部分已做改进。
转载请注明转自:kn007的个人博客的《使用Zend OPCache加速PHP》
沙发~七七,我把NewRelic给装上了,但是感觉除了装B之外没啥用啊~
@郑杰: 装逼之外,可以看下那些东西占用带宽抑或是其他多
七七,你那个Opcache的ControlPanel是在哪儿下的啊?源码包里我没有找到啊
@郑杰: 我不知你怎么找的。如果官网是木有的,你要去上GitHub。
地址: https://kn007.net/func/go.php?to=ebbe15WpgjIiWwHReCgeu6Dcm60yfAA680WQpzFvKdSWG6fQTzSizSfAbZSQSQGUkdeNj5IQVGzS16mg2YPfkn1IVC
@kn007: 还好这个项目没有被铁通墙。。。我看了看,我的OpCache缓存命中率在82%,我估计是和XCache有冲突吧。七七你撤掉其他的缓存程序没?
@郑杰: 你写了什么,怎么刚才进了待审核 空闲80%算不错了。我现在是Varnish+OPCache+W3TC+Memcache+FastCGI
@kn007: 我上次用诡谲(icodex.org)的Varnish规则,Varnish缓存命中率在25%左右,结果我自己写了个无脑缓存,缓存命中率在 99%左右····
@郑杰: 人家网站503了 按使用varnish来想估计后端502了。。
我自己写的还行吧,80%以上。主要要看规则缓存什么类型,怎么缓存。规则写好,自然就好。
在vestacp上试了下,没成功
@Andrew: 这在php5.5+已是标配