PHP8开启JIT
JIT时php8的重要功能之一,可以极大的提高性能;
JIT编译器集成在了Opcache插件中,仅在启动Opcache插件才有效
Opcache将 PHP 脚本编译后的字节码存储到内存中,以避免每次执行脚本时重新解析和编译,从而提高 PHP 应用程序的性能和响应速度。
Opcache开启:
编辑php.ini文件,将zend_extension=opcache前面的‘;’号去掉
然后把opcache的几个配置项也开启 (去掉;)
opcache.enable=1;
opcache.enable_cli=0;
opcache.memory_consumption=128;
opcache.interned_strings_buffer=8;
opcache.max_accelerated_files=10000
再在opcache.max_accelerated_files=10000新增下面两段配置就可以了
opcache.jit=tracing
opcache.jit_buffer_size=100M
重启php-fpm:
pkill -USR2 php-fpm
运行phpinfo();如果看到这个代表JIT开启成功
测试代码:
function t(){ $r = 0; for ($c = 0; $c < 1000000000; $c++) { $r += $c; } } $start = microtime(true); t(); $end = microtime(true); $spend = round($end - $start, 3); echo $spend;
将php.ini中的jit配置注释掉后,重启php-fpm运行代码
;opcache.jit=tracing
;opcache.jit_buffer_size=100M
再将两配置的注释去掉,重启php-fpm运行代码:
关闭JIT运行:
5.88秒
打开JIT运行:
1.04秒
由此可见,JIT对数学计算的性能提升还是很大的
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· 提示词工程——AI应用必不可少的技术
· 字符编码:从基础到乱码解决
· 地球OL攻略 —— 某应届生求职总结