2025-10-25 【踩坑】 file_get_contents 与 cURL 的 HTTP 协议版本坑点 🧩 背景 在日常开发中,我们常常需要在 PHP 程序中抓取第三方接口数据。最常见的两种方式是: 1. filegetcontents($url) 2. cURL 扩展函数(如 curlexec()) 在 PHP 7.2 的生产环境中,... 阅读全文
2025-09-16 [踩坑] 记一次 Swoole 报错排查:`swReactor_write (ERRNO 1008): socket#58 output buffer overflow` 在最近的项目中,我们线上脚本服务跑了一段时间后,日志里频繁出现如下警告: 起初看见这个报错有些懵,后来一番排查才确认根因:子进程给 worker 进程发送消息过大且过快,导致 Swoole 的输出缓冲区溢出。本文记录一下整个问题分析与... 阅读全文
2025-09-13 【踩坑】connect() failed: Connection timed out in 偶发超时问题排查与解决 在日常运维和开发中,我们经常会用到 Redis 作为缓存或消息存储。但线上偶尔会出现这样一个报错: 这是 Redis 连接超时,在某些情况下会导致业务请求失败。本文记录一次排查过程以及优化方案。 --- 一、问题现象 错误提示:Red... 阅读全文
2025-08-02 【踩坑】 Swoole 定时 Kill Worker 导致 TCP 粘包问题分析与解决 在高性能服务中,Swoole 常被用于构建 TCP/HTTP 长连接服务。但最近我们在实际业务(撮合引擎)运行中,遇到一个隐蔽但影响极大的问题:客户端 TCP 请求出现粘包/串包现象,导致撮合逻辑异常。 经过多轮排查,最终定位到问题根... 阅读全文
2025-07-24 Supervisor 守护 PHP 脚本日志中断问题排查记录 🧩 问题描述 线上生产环境中,Supervisor 用于守护多个 PHP 脚本任务(共计 310 个)。这些脚本长期运行,一直有正常的日志输出。然而在某天突然发现: 某任务的日志输出中断; 执行 supervisorctl statu... 阅读全文