没有不值得去解决的问题,也没有不值得去学习的技术!

标签: Redis

  • 在 WordPress 多语言生产环境中,修改自定义 taxonomy series 的系列描述后,W3 Total Cache 再次出现整站 Page Cache 全量失效。通过 Page Cache 快照、Full Flush Tracer 与 Nginx 后台日志,最终确认 series 的 edited_term 进入现有兼容插件的 fallback,并调用 w3tc_flush_posts()。本文记录如何仅将 series 加入允许最终一致性的 taxonomy,完成 Git 提交、生产部署与连续两次真实编辑验证,同时区分这一问题与此前已经存在的 Object Cache / Redis 旧对象问题。

  • 在修复 Yoast Sitemap 500 和 W3 Total Cache 联合预热 Sitemap 之后,继续检查发现 W3TC 的 w3_pgcache_prime 与 w3_pgcache_cleanup 定时任务仍然异常。通过创建随机 Cron Probe 复现问题,最终确认数据库中的 cron option 已更新,但普通 PHP 环境通过 get_option(“cron”) 读取到的仍是 Redis Object Cache 中陈旧的 alloptions。精准删除 options/alloptions 后,Cron 数据重新与数据库一致,Prime、Cleanup 以及 Linux crond 的生产执行链路均恢复正常。

  • 阿里云 ECS 20GB 系统盘使用率升至 81% 并持续触发告警后,对服务器磁盘占用进行逐项排查。确认 PHP 8.5、Nginx 1.30.4、Redis 8.10.0 当前生产运行路径后,清理升级遗留的构建目录、源码、回滚备份和旧 OneinStack 归档,同时处理 824MB PHP-FPM 异常日志、约 2GB systemd journal,以及已经完成使命的 WordPress 历史文章处理目录。最终系统盘使用率从 81% 降至 42%,可用空间增加至约 11GB,并完成 Nginx、PHP-FPM、Redis 运行状态验证。

  • 在解决 WordPress 首页性能问题后,对当前服务器进行了完整配置审计,重点检查 Nginx、PHP-FPM、OPcache、Redis、W3 Total Cache、阿里云 RDS/MySQL 以及 WordPress 应用层。最终将 PHP-FPM 最大工作进程从 10 提高到 14,调整 OPcache 内存与 Interned Strings 配置,关闭 Gutenberg 实时协作,并为 SlyTranslate 调试日志增加日志轮转;同时保留大量已经运行健康的参数不变,形成一套更适合当前网站长期运行的服务器配置基线。

  • 本文记录在阿里云 ECS 的 OneinStack 环境中,将源码安装的 Redis 7.0.11 升级到 Redis 8.10.0 的完整过程。内容包括升级前环境审计、vm.overcommit_memory 与 Transparent Huge Pages 优化、手动生成 RDB、双重备份与自动回滚、RedisBloom 等附加模块编译失败分析、Redis 核心二进制单独构建、旧版 RDB 兼容检查、临时端口与 PHP Redis 读写测试,以及生产切换后的 WordPress、W3 Total Cache、内存和缓存状态验证。

  • 阿里云 ECS 再次频繁触发 CPU 告警后,我结合云监控与 EdgeOne 离线日志,确认自动化抓取和大量回源 MISS 是主要诱因,而 W3TC 未预缓存归档分页只是放大因素。考虑到服务器长期运行在 1 核 2G、内存占用接近 60%,且后续还要部署 Go Tour,最终将实例升级为 2 核 4G。本文记录了告警分析、规格选择、快照备份、升配重启,以及 Nginx、PHP-FPM、Redis、W3TC 和三个域名的完整验证过程。

  • 在将 WordPress 英文站从 /en/ 迁移到独立子域名后,我发现部分新发布的英文译文虽然已经与中文文章建立 Polylang 关联,但中文详情页仍然缺少语言切换器和 hreflang。排查确认,问题来自 W3 Total Cache Redis Object Cache 在多 Host 环境下缓存了旧的 post_translations_relationships 数据,随后 Page Cache 又继续保存错误 HTML。本文记录了 WP-CLI、真实 HTTP Runtime、精确 Object Cache 删除和 Page Cache 验证过程,并说明为什么最终暂时不引入复杂的跨 Host Redis 清理逻辑,而选择保持现有 TTL,让该低优先级问题自然恢复。

  • 将 WordPress 英文站从 /en/ 迁移到独立子域名后,我排查了 Polylang 多域名、独立后台 Host、W3 Total Cache Page Cache 与 Redis Object Cache 之间的缓存失效问题。最终确认并修复了英文文章更新后语言首页 Page Cache 未完整失效,以及 posts 对象缓存跨 Host 失效的问题,并将方案整理为 MIT 许可的独立 MU Plugin。真实后台 Update 验证后,Origin 层已能够正确返回最新内容,剩余问题进一步定位到 EdgeOne、Cloudflare 等 CDN 层。

  • 在为 WordPress 中英文归档页增加 Adsterra Native Banner 时,前台始终无法及时显示最新模板内容。经过对 WPCode、PHP Snippet、Shortcode、Language Visibility、Block Template、CDN、W3 Total Cache Page Cache 与 Redis Object Cache 的逐层排查,最终确认 www 与 en 不同 Host 下的 W3TC Object Cache 保留了旧版 wp_template。分别清理两个域名上下文的 Object Cache,并重新生成对应 Page Cache 后,中英文广告均恢复正常。此次问题也暴露出现有多域名缓存同步机制对 wp_template 等结构性内容覆盖不足,下一步将重点完善已有 MU 插件,并继续处理首页最新文章仍停留在 7 月 28 日的问题。

  • 一次阿里云 ECS CPU 接近 100% 的告警,最终从 Nginx 499、PHP-FPM max_children、Slowlog、W3 Total Cache Object Cache 和 Redis 一路排查到 Page Cache 冷缓存。实测发现服务器仅有 1 vCPU,而 /page/9/ 在 Cold MISS 时 TTFB 高达 10.6 秒,缓存命中后仅约 0.016 秒。最终没有提高 PHP-FPM 并发、关闭 Redis 或开启缓存预热,而是将 W3TC Page Cache 最长生命周期从 1 小时延长到 12 小时,以降低历史页面反复动态生成带来的 CPU 压力。

👨‍💻 个人品牌

王世强|技术实践者 · 独立博客作者

15+ 年 Web 与系统实践经验,持续关注网站基础设施、系统优化、AI 工具与自动化。

持续运营技术博客 10+ 年,累计发布 1000+ 篇原创技术文章。

长期建设个人项目,也欢迎合适的技术交流、咨询与合作。

👉 关于我

.env (14) add (16) AI 翻译 (31) Apache (13) Array (19) A Tour of Go (69) Cache (13) CDN 缓存 (13) CentOS (23) ChatGPT (20) ChatGPT Plus (15) chrome (19) Cloudflare (34) Codex (22) composer (42) composer.json (22) composer update (14) console (16) Container (25) curl (16) delete (31) Docker (32) Dockerfile (15) EdgeOne (34) environment variable (19) error (24) file (15) filter (20) Git (27) GitHub (23) Gitlab (15) GLM-5.2 (27) Go (63) go-tour-i18n (14) Google AdSense (30) Go 语言 (24) GraphQL (24) GraphQL API (14) Gutenberg (35) http (21) https (22) Interface (19) Jquery (13) json (24) Laravel (37) Laravel 6 (55) Laravel 9 (25) Lighthouse (17) Lighthouse 5 (14) Linux (22) Migrate (13) Module (17) MySQL (78) MySQL 5.7 (22) Nginx (63) normalize.css (28) OKX (15) OneinStack (21) PHP (67) php-fpm (19) php.ini (24) PHP 7.1.12 (22) PHP 7.4 (26) phpmyadmin (15) PhpStorm (24) Polylang (58) postman (18) Query (17) queue (16) Rancher (24) Redis (51) RESTful (27) RESTful API (23) Shopify (19) SlyTranslate (21) SQL (24) String (14) TortoiseGit (14) Twenty Twenty-Five (20) Ubuntu (40) update (20) VPN (17) W3 Total Cache (39) Windows 10 (46) WireGuard (28) WordPress (134) WordPress 多语言 (13) WPCode (23) Wstunnel (15) Yii (40) Yii 2 (70) Yii 2.0 (51) ZgoCloud (13) 多语言网站 (13) 多语言翻译 (36) 技术博客 (15) 故障排查 (15) 数据库迁移 (16) 浏览器 (14) 阿里云 (19)

2026 年 9 月
 123456
78910111213
14151617181920
21222324252627
282930