64 lines
3.4 KiB
Markdown
64 lines
3.4 KiB
Markdown
# Proxy Pool 项目交付计划
|
||
|
||
## 目标
|
||
|
||
以 `对话内容.md` 的 9404 行完整讨论为唯一需求基线,交付设计文案、
|
||
开发文档和可编译、可测试、可扩展的 Go 项目架构。
|
||
|
||
## 需求覆盖原则
|
||
|
||
- 同一主题存在多轮修订时,以文件中最后出现的明确结论为准。
|
||
- 用户补充的集群峰值为 100,000 QPS,覆盖文档早期 10,000 并发示例。
|
||
- Extract API 固定采用一次性独占发放;早期 Lease/Release 设计作废。
|
||
- 不保留空实现、TBD、TODO 或没有接口契约的占位目录。
|
||
|
||
## 阶段
|
||
|
||
1. [已完成] 完整读取对话并识别覆盖关系
|
||
2. [已完成] 建立需求追踪矩阵与统一领域模型
|
||
3. [已完成] 编写总体设计、产品设计、项目结构和 ADR
|
||
4. [已完成] 编写开发、配置、API、测试、安全和运维文档
|
||
5. [已完成] 搭建 Go 模块、核心包、契约和部署拓扑目录
|
||
6. [已完成] 实现状态机、首条路由、Sequential、原子容量、独占提取、
|
||
Fetch 分类、严格配置、不可变快照和本地调度参考实现
|
||
7. [已完成] 执行单元测试、静态检查、构建和静态部署/契约验证;本机因
|
||
`CGO_ENABLED=0` 且无 C 编译器未运行 race,保留给 Linux CI
|
||
8. [已完成] 按需求矩阵逐项审计并生成版本化文档包
|
||
9. [已完成] 将 Proxy 明细、独占提取、短期幂等和 Worker 所有权统一到
|
||
TTL 活动池契约;PostgreSQL 退出代理数据路径
|
||
10. [已完成] 实现生产 Redis Activity Adapter、原子 Lua、公用行为契约和
|
||
Redis 8.2 集成 fixture;本地 Redis 禁止短效代理数据持久化
|
||
11. [已完成] 实现 PostgreSQL 管理面;ADR、领域事务契约、MemoryStore、公用
|
||
契约、六表 Schema、Admin Actor 传播、应用服务、原子配置发布、pgx Adapter
|
||
和真实 PostgreSQL 18 集成测试已完成
|
||
12. [进行中] 复核验收清单并收敛既有 Routing/Sequential 与 Proxy 容量边界;
|
||
机器契约和文档类滞后勾选已按仓库证据校正
|
||
13. [进行中] 落地 `proxy-controller` 进程装配;配置单次加载、PostgreSQL 迁移、
|
||
Redis 活动池、低基数状态聚合、Distribution/Admin 启动与关闭已完成,
|
||
双存储 bootstrap 集成已通过,Provider/Metrics 与完整 HTTP 进程链仍待实现
|
||
|
||
## 串并行关系
|
||
|
||
```text
|
||
全文解析 ─> 需求矩阵 ─> 统一设计 ─┬─> 设计/开发文档 ─┐
|
||
├─> API/配置契约 ───┼─> 集成验证
|
||
└─> Go 项目架构 ────┘
|
||
```
|
||
|
||
## 测试约束
|
||
|
||
- 单条后台测试命令最长运行 60 秒。
|
||
- 核心并发代码必须执行 `go test -race`。
|
||
- 100k QPS 只能由可复现的集群压测结果证明,架构文档不得把设计容量
|
||
写成已验证性能。
|
||
|
||
## 已知环境限制
|
||
|
||
- Docker Compose 配置与 Kubernetes Kustomize 已完成静态渲染验证;Redis 8.2
|
||
与 PostgreSQL 18 的隔离 Adapter fixture 已运行,完整目标运行拓扑尚未启动。
|
||
- `cmd/proxy-controller` 已实现 Admin/Distribution 与双存储启动装配;Gateway、
|
||
Checker、Loadgen、Provider Leader/分布式限流、Metrics、Redis 故障转移验证与
|
||
代表性集群压测属于后续实施范围。
|
||
- `implementation-plan.md` 当前按 73 个验收项统计;已校正为 51 项完成,
|
||
验收项完成率约 69.9%,不等同于生产就绪度。
|