docs(plan): 更新 coco 子模块升级记录,标记多线程模式问题
This commit is contained in:
parent
d2c6dc3617
commit
c5162db508
@ -11,7 +11,7 @@
|
||||
- [x] 目录浏览
|
||||
- [x] Range 请求
|
||||
- [x] MIME 类型识别
|
||||
- [x] 多线程 M:N 调度
|
||||
- [x] 多线程 M:N 调度(**有已知问题**:`-t` 模式下主线程不在协程上下文,client_handler 非阻塞 fd busy loop)
|
||||
- [x] 命令行参数
|
||||
- [x] 优雅关闭
|
||||
|
||||
@ -51,6 +51,8 @@
|
||||
- **59 项集成测试全部通过**(新增 5 项访问日志测试)
|
||||
- **35 个单元测试全部通过**(Unity 框架)
|
||||
- 压测数据:wrk -t4 -c100 -d10s → 16,179 RPS,平均延迟 59.86μs
|
||||
- **coco v2.2.0 压测**:wrk -t4 -c100 -d10s → 15,056 RPS,平均延迟 64.49μs(单线程模式,性能在合理范围内)
|
||||
- 多线程模式(-t -w 4)当前存在连接问题,待排查
|
||||
- POST 支持:JSON 和 form-urlencoded 回显,multipart 文件上传,Content-Length 解析,8MB 上限
|
||||
- **配置文件支持**:JSON 格式,9 个字段(含 access_log),命令行参数可覆盖
|
||||
- **访问日志**:Nginx combined 格式,支持文件路径或 stdout(`-`),线程安全(pthread_mutex),记录 User-Agent / Referer / 状态码
|
||||
@ -60,12 +62,20 @@
|
||||
|
||||
## 待办池
|
||||
|
||||
1. **[中] Windows 兼容性** — 平台抽象层(platform.h / platform.c),sendfile 替代方案,io_uring 替代方案
|
||||
2. **[中] Doxygen 中文注释** — http2.c 已完成,其余模块(tls.c, config.c, multipart.c 等)待补充
|
||||
3. **[低] 检查远程更新内容** — 上游有 new commits,需 review 9041d8d
|
||||
1. **[高] 多线程模式修复** — `accept_loop` 主线程不在协程上下文中,`client_handler` 在非阻塞 fd 上 busy loop,导致请求无法处理。需让 accept_loop 通过 `coco_go` 在调度器中运行,或使用 `coco_accept` / `poll` 等待 I/O。
|
||||
2. **[中] Windows 兼容性** — 平台抽象层(platform.h / platform.c),sendfile 替代方案,io_uring 替代方案
|
||||
3. **[中] Doxygen 中文注释** — http2.c 已完成,其余模块(tls.c, config.c, multipart.c 等)待补充
|
||||
4. **[已完成] ~~检查远程更新内容~~** — 上游 coco v2.2.0 已 review 并升级(b45045e)
|
||||
|
||||
## 最近行动记录
|
||||
|
||||
- **2026-06-05: 本轮行动 — 升级 coco 子模块到 v2.2.0**
|
||||
- 检查 upstream 新提交:发现 release 2.2.0,包含调度器重大改进
|
||||
- 主要更新:负载重分配、热栈迁移槽位释放、调度器停止时状态清理、原子减量修复
|
||||
- fast-forward 子模块从 62dbb13 到 b45045e
|
||||
- 编译通过,零警告(仅 coco linker .note.GNU-stack 提示)
|
||||
- **59 项集成测试全部通过,127 个单元测试全部通过**
|
||||
- 推送到 main(d2c6dc3)
|
||||
- **2026-06-05: 本轮行动 — 访问日志(Nginx combined 格式)**
|
||||
- 新增 `access_log.c` / `access_log.h`:Nginx combined 格式访问日志,线程安全(pthread_mutex)
|
||||
- `cocoon.h`:新增 `access_log_path` 配置字段
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user