效果还是不多比比,上效果:(已关闭 WP Super Cache,开启 Memcached)WP Super Cache 静态网页虽然快,但是最致命的缺点是动态元素没法变更,比如阅读数和文章发布距今时间;而且页面一有修改就要重新生成缓存,开销还是蛮大的。OPcache 加持后,耗时几乎和静态网页持平,而且保持了页面的动态,内存消耗也极大降低,在后台看页面刷新时 CPU 终于不是 100% 了。而且不仅前台,后台管理页面也加速了。当然 WP Super Cache 也不是完全没用了,一些几乎就是纯静态的网页(比如隐私政策,友链列表)在长时间内变化很小,就可以弄成静态网页进一步降低性能消耗。WP Super Cache 教程请看: 凉拖捞佬Pro:WordPress 加速系列(1):WP Super Cache 缓存静态网页宝塔面板开启 OPCache 扩展OPcache 参数设置重启一下 php 服务,然后在"配置文件"搜索opcache.enable 跳到 opcache 的参数设置。参考教程: managingwp.io/2022/12/1...官方参数文档: php.net/manual/en/opcac...opcache.memory_consumption单位 MB,默认 128opcache 缓存占用的内存。低配置机器一般设置为可用内存的 1/4,或者 256-512 MB。更大的内存占用可以放下更多的缓存。我的机器总共 2G 内存,可用内存 1.5G 左右,所以我很慷慨地分了 512MB。opcache.interned_strings_buffer单位 MB,默认 32在 PHP 中,字符串常量是不可变的,它们在内存中占据一定的空间。为了提高性能和减少内存消耗,PHP 使用了字符串池(string intern pool)的机制。字符串池通过在内存中共享相同的字符串常量,避免了重复存储相同的字符串数据。增加opcache.interned_strings_buffer 的大小可以提高字符串常量的共享和重用,从而减少内存占用。这里我就保持给个 64 MB,之后可以根据实际使用情况再做调整。opcache.max_accelerated_files单位 个,默认 80000最高可以缓存多少个文件。当达到opcache.max_accelerated_files 设置的限制时,OPcache 会使用一种替换策略(例如最早使用的文件将被淘汰)来释放缓存中的一些脚本文件,为新的脚本文件腾出空间。设置过小可能会导致频繁的文件淘汰,增加了解析和编译的开销,降低了 OPcache 的性能优势。而设置过大可能会占用过多的内存资源,特别是在有限的服务器配置下。如果站点不大,完全可以保持默认或者直接容纳所有文件。查看站点下有多少 php 文件的命令行:我这里就保留默认的值。opcache.revalidate_freq单位 秒,默认 3当opcache.validate_timestamps 参数启用时,OPcache 会在每个请求中检查脚本文件的时间戳以确定是否重新缓存。opcache.revalidate_freq 参数定义了多少秒后进行一次时间戳检查。一般个人博客站点不会非常频繁地修改 php 代码(除非很喜欢自己加乱七八糟地功能),而检查时间戳的操作会增加性能开销,所以这个值可以调大,甚至设置为 0 禁用检查;而如果你正在频繁地修改 php 代码,那么可能就要调小一点,比如个位数。我这里就暂时先设置为 60。opcache.fast_shutdow没搞懂干嘛的,保持默认 1。opcache.validate_timestamps布尔值 0 和 1,默认 1当opcache.validate_timestamps 设置为 1,OPcache 在每个请求中会检查脚本文件的时间戳以确定是否重新缓存。如果禁用(设置为 0 ),就永远不会检查缓存是否过期,修改了 php 文件后需要手动执行检查。宝塔配置文件没有,我添加了上去并且保持默认的 1。修改完之后,保存并重启 php 服务。监视 OPcache 工作情况这里就选用 WPJAM BASIC 这个插件( cn.wordpress.org/plugin...)监视。第一个饼图对应opcache.memory_consumption,最后一个饼图对应 opcache.interned_strings_buffer,可以根据这里的使用情况在日后调整这两个参数。封面图: pixiv.net/artworks/1001...