«

如何开启PHP8的JIT提升运行速度

时间:2024-3-3 10:51     作者:韩俊     分类: PHP


JIT时php8的重要功能之一,JIT在Opcache优化之后的基础上,再次优化,直接生成机器码。

JIT编译器集成在了Opcache插件中,仅在启动Opcache插件才有效,JIT是在原来Opcache优化的基础之上进行优化的,不是替代。目前PHP8只支持x86架构的CPU。

Opcache将 PHP 脚本编译后的字节码存储到内存中,以避免每次执行脚本时重新解析和编译,从而提高 PHP 应用程序的性能和响应速度。

Opcache开启:

opcache.enable=1
opcache.enable_cli=1
opcache.memory_consumption=512
opcache.interned_strings_buffer=8
opcache.max_accelerated_files=10000
;opcache.jit=off   #注释掉此行
opcache.jit_buffer_size=100M #此处是设置开启JIT的核心

设置好后,重启apache即可。

在phpinfo的界面中Zend OPcache中如果看到JIT为”On“的状态表示开启成功。

测试一下运行速度:

$time1=time();
echo "开始时间:".$time1."<br>";

function gogogo($time1){
    $r = 0;
    for ($c = 0; $c < 1000000000; $c++) {
         $r += $c;
    }

    $time2=time();
    echo "结束时间:".$time2."<br>";
    echo "时间差:".($time2-$time1)."<br>";
}
gogogo($time1);

我这里是PHP8.1的版本,开启JIT后运行时间为1-2秒,不开启JIT则为8-9秒,效率提升明显。

标签: php php教程

热门推荐