Sivo 悉见

php8:开启opcache和JIT(php 8.3.9)

匿名 · 更新于 2024/10/9

一,配置文件中的项:

opcache.enable=1
opcache.enable_cli=0
opcache.memory_consumption=128
opcache.max_accelerated_files=10000
opcache.revalidate_freq=240
opcache.save_comments=0
opcache.error_log=/data/logs/phplogs/opache_error.log

opcache.enable=1       # 开关
opcache.enable_cli=0     # 命令行是否生效
opcache.memory_consumption=128      # 使用内存
opcache.max_accelerated_files=10000    # 加速文件数量
opcache.revalidate_freq=240                # 240检查一次文件修改时间
opcache.save_comments=0                  # 缓存文件不包括注释
opcache.error_log=/logs/opache_error.log    # 指定错误日志的路径

另外也要开启扩展:

zend_extension=opcache 

效果:

二,开启JIT

#启动JIT

opcache.jit_buffer_size=128m

opcache.jit=1205

说明: jit_buffer_size 一项用来指定jit可用的缓存大小

jit的取值说明:

opcode.jit是有点复杂的配置值。它接受disableonofftracefunction,4 位值(4-digit)(不是位掩码),按顺序排列 4 个不同的标志。。

  • disable:在启动时完全禁用JIT功能,并且在运行时无法启用。
  • off:禁用,但是可以在运行时启用JIT。
  • on:启用tracing模式。
  • tracing细化配置 的别名1254
  • function细化配置 的别名1205

PHP JIT接受tracingfunction作为表示配置组合的简单配置。

tracingfunction别名外,该opcache.jit伪指令还接受4位数字的配置值。它可以进一步配置JIT行为。

4位配置值的格式为CRTO,其中每个位置允许单个标记指定的字母数字值。