xfy911
|
fb446ac7e6
|
更新规划:FastCGI 服务器集成完成,标记 Phase 5 进度
|
2026-06-15 09:28:45 +08:00 |
|
xfy911
|
ffa03c2163
|
维护记录: FastCGI 协议核心实现完成 (2026-06-15 08:17)
|
2026-06-15 08:29:37 +08:00 |
|
xfy911
|
f1b9805639
|
规划: Phase 5 路线图 — 应用网关方向(FastCGI / 连接池 / 配置热重载校验)
|
2026-06-15 08:18:25 +08:00 |
|
xfy911
|
3a1a1f1f42
|
维护记录:定期巡检状态确认(2026-06-15 06:17)
|
2026-06-15 06:18:41 +08:00 |
|
xfy911
|
d84e6f43c2
|
维护记录:定期巡检状态确认(2026-06-15 03:17)
|
2026-06-15 03:20:34 +08:00 |
|
xfy911
|
c5f582c586
|
维护记录:定期巡检状态确认(2026-06-14 21:17)
|
2026-06-14 21:19:27 +08:00 |
|
xfy911
|
81ce53b1a1
|
维护记录:定期巡检状态确认(2026-06-14 18:17)
|
2026-06-14 18:18:44 +08:00 |
|
xfy911
|
f1941b990c
|
更新维护记录:Rate Limit 测试加固(2026-06-14 15:17)
|
2026-06-14 15:22:43 +08:00 |
|
xfy911
|
e886ce104c
|
维护记录:定期巡检状态确认(2026-06-14 09:17)
|
2026-06-14 09:18:56 +08:00 |
|
xfy911
|
c6cd42306e
|
维护记录:定期巡检状态确认(2026-06-14 06:17)
|
2026-06-14 06:18:59 +08:00 |
|
xfy911
|
df9fec0b6f
|
维护记录:定期巡检状态确认(2026-06-14 03:17)
|
2026-06-14 03:20:03 +08:00 |
|
xfy911
|
caedd0062f
|
维护记录:定期巡检状态确认(2026-06-14 00:17)
|
2026-06-14 00:19:53 +08:00 |
|
xfy911
|
d8d0132c1b
|
维护记录:定期巡检状态确认(2026-06-13 18:17)
|
2026-06-13 18:18:59 +08:00 |
|
xfy911
|
e7c8b8e602
|
维护记录:定期巡检状态确认(2026-06-13 15:17)
|
2026-06-13 15:22:08 +08:00 |
|
xfy911
|
343a8b4199
|
维护记录:定期巡检状态确认(2026-06-13 12:17)
|
2026-06-13 12:18:48 +08:00 |
|
xfy911
|
abf34d6324
|
维护记录:定期巡检状态确认(2026-06-13 09:17)
|
2026-06-13 09:19:58 +08:00 |
|
xfy911
|
08a7470d32
|
修复 SSE 单元测试编译警告,更新维护记录
- 初始化 test_sse.c 中 client/server 变量,消除 7 处 -Wmaybe-uninitialized 警告
- 编译零警告,458 个单元测试 + 115 项集成测试全部通过
|
2026-06-13 06:25:43 +08:00 |
|
xfy911
|
710cede61c
|
维护记录:定期巡检状态确认(2026-06-13 00:17)
|
2026-06-13 00:19:48 +08:00 |
|
xfy911
|
8ec6819e7b
|
维护记录:定期巡检状态确认(2026-06-12 21:17)
|
2026-06-12 21:19:17 +08:00 |
|
xfy911
|
cf6be5fe82
|
更新维护记录:定期巡检状态确认(2026-06-12 18:17)
|
2026-06-12 18:26:33 +08:00 |
|
xfy911
|
a696f48359
|
维护记录:定期巡检验证,全部测试通过
|
2026-06-12 15:54:27 +08:00 |
|
xfy911
|
5d6ca62f79
|
维护记录:修复 Makefile 缺失规则与编译产物清理
|
2026-06-12 15:44:00 +08:00 |
|
xfy911
|
fb35fef0db
|
feat: SSE 端点支持
- 新增 sse.h/sse.c 实现 Server-Sent Events
- 可复用 API: sse_send_headers, sse_send_event, sse_send_comment
- 内置 /_sse 演示端点,每秒推送时间戳事件
- 支持 Last-Event-ID 断线重连
- 每 15 秒心跳注释保活
- 非 GET 方法返回 405
- 集成到 server.c 请求处理流程
- 新增 7 项 SSE 单元测试 + 5 项集成测试
- 编译零警告,全部 458 单元测试 + 114 集成测试通过 ✓
|
2026-06-12 13:39:49 +08:00 |
|
xfy911
|
0f1323dccb
|
维护记录:定期巡检验证,全部测试通过
|
2026-06-12 12:21:07 +08:00 |
|
xfy911
|
b255c3f5da
|
维护:移除误跟踪的编译产物 test_http_asan
- git rm --cached tests/unit/test_http_asan
- 该文件为带 AddressSanitizer 的单元测试 ELF 可执行文件
- 已在 .gitignore 中正确忽略(tests/unit/test_* 模式覆盖)
- 更新 .cocoon-plan.md 维护记录
|
2026-06-12 09:23:59 +08:00 |
|
xfy911
|
132f219803
|
维护记录:定期巡检验证,全部测试通过
|
2026-06-12 06:19:12 +08:00 |
|
xfy911
|
65bc686f39
|
维护记录:定期巡检验证,全部测试通过
|
2026-06-12 03:19:42 +08:00 |
|
xfy911
|
397554d0c9
|
docs: 更新维护记录,2026-06-12 移除误跟踪编译产物
|
2026-06-12 00:19:18 +08:00 |
|
xfy911
|
460832019d
|
docs: 更新维护状态记录,2026-06-11 21:18 定期巡检验证全部测试通过
- 编译零警告(含额外严格标志 -Wshadow -Wstrict-prototypes -Wmissing-prototypes)
- 451 个单元测试 + 109 项集成测试全部通过
- 无遗留 TODO/FIXME
- 工作区干净,维护模式正常
|
2026-06-11 21:22:25 +08:00 |
|
xfy911
|
d06ac54782
|
docs: 更新维护状态记录,2026-06-11 验证全部测试通过
|
2026-06-11 18:19:15 +08:00 |
|
xfy911
|
9544206d0c
|
docs: 清理 middleware_ext.c 中遗留的 TODO 注释,改为准确机制说明
|
2026-06-11 15:21:34 +08:00 |
|
xfy911
|
87bae245d2
|
build(phase4): 更新构建系统与文档,集成 Phase 4 模块
- CMakeLists.txt: 新增 middleware_ext.c、load_balance.c、grpc.c、
http3.c 到源文件列表和单元测试列表
- Makefile: 更新 SRCS,新增 4 个模块的单元测试编译规则
- README.md: 新增 Phase 4 特性(JWT Auth、负载均衡、gRPC、HTTP/3)、
模块说明表、路线图标记全部完成、测试统计(451 单元测试)
- .cocoon-plan.md: Phase 4 全部标记为完成,更新当前状态与行动记录
|
2026-06-10 11:36:59 +08:00 |
|
xfy911
|
525cd8954c
|
docs(plan): 更新维护状态记录
|
2026-06-10 09:05:00 +08:00 |
|
xfy911
|
43d5f6d54e
|
docs(readme): 标记虚拟主机为完成,更新发展规划
- README 路线图:虚拟主机 / 多站点标记为 ✅ 完成
- .cocoon-plan.md:重构为完整历史记录,包含所有功能完成时间线
- 项目进入维护阶段,所有 Phase 1-3 功能已完成
|
2026-06-10 06:03:49 +08:00 |
|
xfy911
|
528291c7e5
|
feat(server): SIGHUP 配置热重载
- server.h/server.c: 新增 server_request_reload() 和 server_reload_config()
- server_create() 新增 config_file_path 参数
- 热重载范围: root_dir, log_level, access_log, gzip/brotli, timeout, max_connections, vhosts, proxies, healthcheck
- 保守策略: 不释放旧字符串指针,避免活跃连接竞态
- accept_loop() 在 accept() 后也检查 reload_requested,确保新连接使用最新配置
- main.c: 新增 sighup_handler() 注册 SIGHUP 信号
- tests/integration_test.sh: 新增 SIGHUP 热重载集成测试 (3项)
- 190 单元测试 + 109 集成测试全部通过,编译零警告
|
2026-06-10 03:41:10 +08:00 |
|
xfy911
|
e6b4a11d16
|
feat(http2): HTTP/2 代理流式转发
- 新增 proxy_data_source_read_callback:实时从后端读取数据流式转发
- http2_serve_proxy 重构:解析响应头后立即发送,body 通过 DATA 帧实时转发
- 解除 64KB 响应缓冲区限制,支持任意大小响应体
- 流结构新增代理字段(backend_fd/tls_conn/eof/close_backend/backend)
- 已缓存 body(recv_headers 预读部分)优先发送,再续读后端
- 连接池归还/关闭自动处理
|
2026-06-10 00:22:46 +08:00 |
|
xfy911
|
2280b318a8
|
docs(plan): 更新计划,标记 proxy 单元测试完成(31项,190个单元测试全部通过)
|
2026-06-09 21:11:53 +08:00 |
|
xfy911
|
0e7de9400c
|
test(healthcheck): 新增主动健康检查单元测试(17项)
- 覆盖 healthcheck_parse_status 状态码解析(正常/异常/边界)
- 覆盖 healthcheck_build_request 请求构建(默认路径/自定义路径/空路径)
- 覆盖 healthcheck_update_state 状态机(阈值恢复/阈值失败/计数器重置/时间戳)
- 覆盖 healthcheck_probe_once NULL 防护
- 使用 #include healthcheck.c 白盒测试技巧访问静态函数
- Makefile: 新增 test_healthcheck 编译规则
- .cocoon-plan.md: 标记主动健康检查完成,更新单元测试总数 159
编译零警告,159 个单元测试 + 106 项集成测试全部通过。
|
2026-06-09 18:16:35 +08:00 |
|
xfy911
|
60ef9ed908
|
feat(vhost): 虚拟主机/多站点支持
- cocoon.h: 新增 cocoon_vhost_t 结构体和 COCOON_MAX_VHOSTS 宏
- config.c: JSON 解析器新增 vhosts 数组解析
- server.c: HTTP/1.1 请求根据 Host 头匹配虚拟主机 root_dir
- http2.h/c: HTTP/2 根据 :authority 匹配虚拟主机,存储为 Host 头
- http2.c: 新增 http2_session_set_server_config() API
- cocoon.json: 添加 vhosts 配置示例
- tests: 新增 3 项虚拟主机集成测试
- 编译零警告,142 单元测试 + 106 集成测试全部通过
|
2026-06-09 15:28:57 +08:00 |
|
xfy911
|
8516261d34
|
docs(plan): 更新计划,标记连接池 HTTP/1.0 兼容完成
- 待办池:连接池 HTTP/1.0 兼容 → ✅
- 测试数:93 → 99 项
- 添加 2026-06-09 12:00 行动记录
|
2026-06-09 12:36:58 +08:00 |
|
xfy911
|
25a0b100c1
|
docs(plan): 更新计划,标记 HTTP/2 代理完成,新增连接池 HTTP/1.0 兼容待办
|
2026-06-09 09:39:56 +08:00 |
|
xfy911
|
9000cdb23a
|
docs(plan): 更新计划,标记加权轮询完成,新增 HTTP/2 代理待办
|
2026-06-09 06:08:30 +08:00 |
|
xfy911
|
23574ab2ba
|
feat(proxy): 连接池大小可配置(默认4,最大16)
- proxy.h: COCOON_MAX_POOL_SIZE → COCOON_POOL_MAX_CAPACITY(16) + COCOON_POOL_DEFAULT_SIZE(4)
- proxy.c: proxy_pool_init 接收 max_pool_size,自动裁剪到上限
- proxy.c: proxy_add_rule 新增 pool_size 参数
- cocoon.h: 配置结构新增 pool_size 字段
- config.c: JSON 解析 pool_size 数字字段,默认值为 4
- server.c: 调用 proxy_add_rule 时传入配置值
- cocoon.json: 示例配置添加 pool_size 展示
编译零警告,142 单元测试 + 90 集成测试全部通过。
|
2026-06-09 03:06:50 +08:00 |
|
xfy911
|
ff1b56fc9e
|
docs(plan): 更新计划,标记连接池完成
- 待办池:连接池完成,新增 HTTP/2 代理支持待办
- 最近行动记录:新增 2026-06-09 连接池/keep-alive 条目
|
2026-06-09 00:21:59 +08:00 |
|
xfy911
|
e13ff5402a
|
feat(proxy): 后端连接池/keep-alive,避免每次请求新建 TCP
- proxy.h: 新增 cocoon_pooled_conn_t / cocoon_conn_pool_t (pthread_mutex 保护)
- 每个后端最多4个空闲连接,30秒空闲超时
- 支持 HTTP 和 HTTPS 后端,复用 tls_conn / fd
- proxy.c: 实现 proxy_pool_init/destroy/acquire/release + proxy_config_destroy
- proxy.c: proxy_relay_backend 使用连接池获取/归还,向后端发送 Connection: keep-alive
- proxy.c: 修复后端关闭连接后复用导致客户端超时的问题
- recv 返回 0 时不再归还到池中,直接关闭并重建
- server.c: server_destroy 调用 proxy_config_destroy 清理所有连接池
- 编译零警告,142 单元测试 + 90 集成测试全部通过
|
2026-06-09 00:21:22 +08:00 |
|
xfy911
|
c3716cd704
|
docs(plan): 更新计划文件,标记健康检查与 SIGPIPE 修复完成
|
2026-06-08 21:27:48 +08:00 |
|
xfy911
|
61d9b01ed6
|
docs(plan): 更新 Prometheus 指标端点开发记录
- 标记反向代理负载均衡和 Prometheus 指标为完成
- 更新项目状态:142 单元测试 + 90 集成测试全部通过
- 记录 /_metrics 端点实现详情
|
2026-06-08 18:11:10 +08:00 |
|
xfy911
|
c3d4b112d7
|
docs(config+plan): 负载均衡示例 + 开发记录更新
- cocoon.json: 展示多后端负载均衡配置(/api -> 3000/3001)
- .cocoon-plan.md: 标记负载均衡完成,更新待办池和最近行动记录
|
2026-06-08 16:17:14 +08:00 |
|
xfy911
|
a2444e18de
|
docs(plan): 再次恢复开发 — 用户指示继续 cocoon,不暂停
|
2026-06-08 15:58:56 +08:00 |
|
xfy911
|
06e34e5a39
|
docs(readme): 更新反向代理文档与配置示例
- 特性列表新增反向代理条目
- 路线图标记反向代理为完成
- 模块职责表新增 proxy.c / proxy_tls.c
- 新增配置文件示例(含反向代理配置)
|
2026-06-08 12:04:29 +08:00 |
|