PHP-如何理解鸟哥说的打开opcache会让PHP7性能变高

鸟哥的博客原文:http://www.laruence.com/2015/12/04/3086.html
鸟哥的博客,让PHP7达到最高性能的几个Tips。
第一点:在这里插入图片描述
那么,为什么开启opcache会提高性能。

先阐述三个概念:
1.PHP-CGI是PHP语言与服务器交互的CGI程序。CGI本身只能解析请求,返回结果。它本身并没有进程管理的作用。来一个请求就回fork一个子进程。
2.真正解析PHP代码的是一个叫做zend的东西。
3.PHP-FPM则是php-cgi的管理器,他包括master和worker两种进程,master负责管理worker进程。

那么把这3个东西联系起来,就是这样子的。
在这里插入图片描述
我们可以看到中间zend解析的时候,将PHP编译为opcode文件。
C语言等编译性语言是编译为2进制文件。
PHP是解释性语言,他也需要转换为机器可以认识的东西,zend解析后的opcode文件也被成为操作码。

PHP文件第二次执行时,同样还是会重新转换为字节码,但是很多时候,文件内容几乎是一样的,比如静态HTML文件,生成后内容许久都不会改变,用户访问请求直接由服务器读取响应给客户端浏览器。都不用经过PHP进行解析构建了。
内存中的字节码数据,可以直接缓存进行二次编译。这样程序就会快一些,cpu的消耗也少了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值