Opcache 知识点

关键配置

  1. PHP opcache 配置、状态与清除
  2. opcache.memory_consumption=512 //内存块大小,单位是M,cli和fpm各自有一个内存块
  3. opcache.max_accelerated_files=100000 //内存中最多可以缓存多少个PHP文件
  4. opcache.validate_timestamps=0 //=1会根据revalidate_freq设定的值检查更新代码,=0永不检查
  5. opcache.revalidate_freq=2 //检测php代码是否更改的间隔(秒)
  6. opcache.max_wasted_percentage //默认是5,浪费内存的百分占比,不能超过此值

注意事项

  1. PHP Opcache 注意事项以及调优
  2. 当 opcache 在某些情况下内存满时,它将擦除所有缓存条目并从空缓存开始,产生缓存击穿:许多请求同时生成相同的缓存条目。
  3. opcache 检测内存是否已满:
    • opcache.memory_consumption 默认为 64(MB)
    • opcache.max_accelerated_files 默认为 2000 个可缓存文件,最大值为 100000
    • opcache.max_wasted_percentage 默认是5,浪费内存的百分占比,不能超过此值
  4. 为了找到正确的配置,可以打印 opcache_get_status(false)
    • oom_restarts 内存满了产生重启的次数
    • last_restart_time 最后重启的时间
    • current_wasted_percentage 当前浪费内存的百分占比

results matching ""

    No results matching ""