欢迎各位兄弟 发布技术文章

这里的技术是共享的

You are here

测试opcache缓存开启前后的性能差异

php5.5以上版本内置了zend opcache模块,OPcache 通过将 PHP 脚本预编译的字节码存储到共享内存中来提升 PHP 的性能,这样的好处就是省去了每次加载和解析PHP脚本的开销。

工具/原料

 
  • wamp集成开发环境(PHP5.5以上)
  • wamp中apache自带的ApacheBench测试工具(以下简称ab)
  • 流行的PHP框架Zend Framework2(以下简称ZF2)

方法/步骤

 
  1. ZF2框架是一款功能强大的PHP框架,内置了许多模块。但是有一个让很多开发者敬而远之的缺陷是太过笨重!是的,相比原生PHP代码和其他流行框架,的确感觉它就像一头大象。

    测试opcache缓存开启前后的性能差异
  2. 为了使用这个功能强大的框架,我们可以对它的运行环境进行一些优化,比如本章即将介绍的使用zend opcache缓存。

    测试opcache缓存开启前后的性能差异
  3. 即将测试的应用程序是用ZF2编写的简单的MVC应用,架设在本地的wamp测试集成环境上,首页如图:

    测试opcache缓存开启前后的性能差异
  4. 不开启opcache的情况下,使用ab测试结果如图:

    ab -n 500 -c 20 http://demo.zf2.com/index.php

    测试opcache缓存开启前后的性能差异
  5. 现在,开启PHP的opcache模块;重启apache后测试如图:

    ab -n 500 -c 20 http://demo.zf2.com/index.php

    测试opcache缓存开启前后的性能差异
  6. 由此可见,开启opcache缓存后,的确很大程度上提升了网站的性能。

  7. 其他应用程序测试数据。

    开启前:

    测试opcache缓存开启前后的性能差异
    测试opcache缓存开启前后的性能差异
  8. 开启后:

    测试opcache缓存开启前后的性能差异
    测试opcache缓存开启前后的性能差异
    END

注意事项

 
  • 正式网站的性能可能受多方面因素的影响,测试结果仅供参考。
  • 由于php语言动态解析的特性,使用opcache和apc等opcode缓存是很有必要的。
 
经验内容仅供参考,如果您需解决具体问题(尤其法律、医学等领域),建议您详细咨询相关领域专业人士。
举报作者声明:本篇经验系本人依照真实经历原创,未经许可,谢绝转载。

来自  http://jingyan.baidu.com/article/d7130635235d4f13fcf47545.html
普通分类: