更新 .cocoon-plan.md — 记录连接池完善进度

This commit is contained in:
xfy911 2026-06-15 12:24:28 +08:00
parent b426ab7130
commit 8e7ce502af

View File

@ -47,7 +47,7 @@
### Phase 5 — 应用网关(进行中) ### Phase 5 — 应用网关(进行中)
- [x] **FastCGI 协议核心** — 记录编码/解码、参数序列化、响应解析、连接池基础 - [x] **FastCGI 协议核心** — 记录编码/解码、参数序列化、响应解析、连接池基础
- [x] **FastCGI 服务器集成** — 将 FastCGI 接入 server.c 请求处理流程,对接 PHP-FPM - [x] **FastCGI 服务器集成** — 将 FastCGI 接入 server.c 请求处理流程,对接 PHP-FPM
- [ ] **反向代理连接池** — HTTP/1.1 后端连接复用,减少握手开销 - [x] **反向代理连接池** — HTTP/1.1 后端连接复用,减少握手开销
- [ ] **配置热重载校验** — 新配置语法校验失败时拒绝重载,避免把服务搞坏 - [ ] **配置热重载校验** — 新配置语法校验失败时拒绝重载,避免把服务搞坏
- [ ] **内存响应缓存** — 基于 LRU + TTL文件不大时直接缓存到内存避免重复磁盘 I/O - [ ] **内存响应缓存** — 基于 LRU + TTL文件不大时直接缓存到内存避免重复磁盘 I/O
- [ ] **管理 Dashboard** — 内置 `/_status` 页面SSE 实时推送指标,像 HAProxy stats 那种 - [ ] **管理 Dashboard** — 内置 `/_status` 页面SSE 实时推送指标,像 HAProxy stats 那种
@ -88,6 +88,18 @@
## 维护记录Phase 5 — 自然扩展) ## 维护记录Phase 5 — 自然扩展)
+ 2026-06-15 12:17: **Phase 5 — 反向代理连接池完善**
- 新增 `proxy_pool_conn_is_alive()`: 使用 `recv(MSG_PEEK | MSG_DONTWAIT)` 非阻塞检测连接是否被对端关闭
- 复用前自动剔除失效连接,避免将已关闭的连接再次用于转发请求
- 新增 `cocoon_pool_stats_t` 统计结构:总请求、命中、新建、超时驱逐、有效性检测失败、活跃/空闲连接数
- 连接池 `acquire`/`release` 全流程统计追踪,便于运维观测
- 新增 7 项 proxy 单元测试连接有效性检测3 项、acquire/release 复用循环、空池新建失败边界、统计初始状态
- 编译验证:零警告,全部通过
- 单元测试465 个全部通过 ✓458 原有 + 7 新增连接池测试)
- 集成测试115 项全部通过 ✓
- 提交已推送到 origin main`b426ab7`
- 项目状态Phase 5 进行中,反向代理连接池已完成,下阶段目标:配置热重载校验
+ 2026-06-15 09:17: **Phase 5 — FastCGI 服务器集成完成** + 2026-06-15 09:17: **Phase 5 — FastCGI 服务器集成完成**
- 新增 `fcgi_handler.h` / `fcgi_handler.c`FastCGI 请求处理器 - 新增 `fcgi_handler.h` / `fcgi_handler.c`FastCGI 请求处理器
- 路由匹配:基于前缀匹配,支持最长路径匹配 - 路由匹配:基于前缀匹配,支持最长路径匹配