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对数学计算的性能提升还是很大的

posted @   童年的回忆  阅读(834)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· 提示词工程——AI应用必不可少的技术
· 字符编码:从基础到乱码解决
· 地球OL攻略 —— 某应届生求职总结
如果本博客解决了您的问题,可以微信支付宝打赏鼓励一下作者哦,在此表示感谢
点击右上角即可分享
微信分享提示