在我之前的博客中提到开启OPcache可以提升php性能。那么为什么开启OPcache就可以提升php运行性能呢?这里就要提到php的运行原理了--Opcodes。
比如一段简单的PHP代码:
<?php echo 'Johnson‘; ?>
PHP执行这段代码会经过如下4个步骤(确切的来说,应该是PHP的语言引擎Zend)
1.Scanning(Lexing) ,将PHP代码转换为语言片段(Tokens)
2.Parsing, 将Tokens转换成简单而有意义的表达式
3.Compilation, 将表达式编译成Opocdes
4.Execution, 顺次执行Opcodes,每次一条,从而实现PHP脚本的功能。
所以当开启OPcache的时候,php在一次请求中已经将Opcodes进行了缓存,那么下次请求的时候,就是跳过前三步,直接运行OPcache里对应的Opcodes,所以大大提升了PHP运行的性能。
如对本文有疑问, 点击进行留言回复!!
*HDU1024.Max Sum Plus Plus(DP+滚动数组优化)
荐 「PHP」不依赖集成环境,使用Nginx手动配置Thinkphp运行环境
网友评论