1 回答
老糊涂仙
TA贡献10条经验 获得超2个赞
就算没有启用opcache,操作系统也会把热点文件缓存在内存中(buffers/cache),Linux上执行free可见buffers/cache占用的内容.Windows资源监视器内存标签下的"备用"内存就相当于Linux的磁盘缓存buffers/cache.
opcache的好处在于省去了PHP源代码到opcode中间码的转换过程,并且保证脚本对应的opcode都保存在内容中.
而C开发的PHP框架Yaf在编译时就已经被GCC优化生成机器码,在PHP服务(PHP-FPM/Apache MOD PHP)启动时就被加载到内存,opcode的性能跟机器码的性能差距很大,就算是Java中编译时优化过的bytecode,跟JIT运行时编译生成的机器码相比,差距也很大,而PHP的opcode在运行时生成,为了快速一般都不做什么优化,所以opcode跟机器码性能差距应该比Java的bytecode还要大.
- 1 回答
- 0 关注
- 1267 浏览
添加回答
举报
0/150
提交
取消