mirror of
https://github.com/Rain-kl/OpenFlare.git
synced 2026-09-29 22:06:38 +08:00
98 lines
3.8 KiB
Markdown
98 lines
3.8 KiB
Markdown
# ATSFlare 开发计划
|
|
|
|
## 1. 当前阶段
|
|
|
|
当前结论:
|
|
|
|
* 第一版已完成并稳定运行
|
|
* 第二版已完成并补齐 HTTPS、证书、域名、节点与预览能力
|
|
* 第三版已完成,运维体验优化相关能力已经落地
|
|
* 第四版已完成前端细节打磨与 UI 优化,但未单独维护专项计划文档
|
|
* 当前正式进入第五版(0.5.x)开发,目标聚焦 OpenResty 反代与缓存性能优化,以及主配置文件接管
|
|
|
|
---
|
|
|
|
## 2. 已完成范围归档
|
|
|
|
### 2.1 已完成能力
|
|
|
|
* 规则管理、配置发布、激活、回滚
|
|
* Agent 注册、心跳、同步、应用、回滚
|
|
* HTTPS/TLS 路由、证书托管、域名管理
|
|
* 节点管理、专属 `agent_token`、全局 `discovery_token`
|
|
* 配置预览、变更摘要、自定义请求头
|
|
* 运维设置热更新
|
|
* Server 下发 Agent 运行参数
|
|
* Agent 自我更新与一键部署
|
|
* Server 版本检查与自升级
|
|
* 新版前端工程、主题切换与统一页面框架
|
|
|
|
### 2.2 归档原则
|
|
|
|
* 已完成阶段的实现细节以代码与 Git 历史为准
|
|
* 不再为已完成工作维护过程性计划、迁移步骤或分阶段验收清单
|
|
* 新的大功能阶段启动前,再补充新的计划文档
|
|
|
|
---
|
|
|
|
## 3. 第五版目标
|
|
|
|
第五版主目标:
|
|
|
|
* 提升 OpenResty 在当前反代链路下的连接、缓冲、超时、压缩与缓存性能
|
|
* 由 Server 统一托管 OpenResty 主配置文件,Agent 不再依赖节点手工维护主配置
|
|
* 所有新增优化项都进入 Server 统一配置面,由管理端维护、版本发布、Agent 拉取与应用
|
|
|
|
第五版不做:
|
|
|
|
* 平台化缓存产品、Purge 系统、分层缓存、节点差异化缓存策略
|
|
* 任意文本片段注入、任意 OpenResty 指令执行、节点侧自定义模板合并
|
|
* 绕过占位符约束的主配置模板直写
|
|
* 引入 Redis、Prometheus、消息队列等新基础设施作为第五版前置条件
|
|
|
|
## 4. 第五版实施顺序
|
|
|
|
建议按以下顺序推进:
|
|
|
|
1. 补齐 Server 侧 OpenResty 性能参数模型、默认值、校验规则与性能页入口,并补充主配置模板编辑能力
|
|
2. 扩展配置渲染结果,使版本快照覆盖主配置文件与路由配置文件
|
|
3. 调整 Agent 本地应用链路,支持主配置写入、校验、reload、失败回滚
|
|
4. 补齐预览、diff、应用结果与日志,确保第五版能力可观测
|
|
5. 以本机 OpenResty 与 Docker OpenResty 两种模式完成联调和回归
|
|
|
|
## 5. 第五版验收标准
|
|
|
|
完成第五版时至少满足:
|
|
|
|
* 管理端可以查看并修改第一批 OpenResty 性能优化项
|
|
* 管理端提供独立“性能”页面,支持结构化设置与主配置模板编辑/预览
|
|
* 性能优化项保存后进入统一发布链路,而不是节点即时生效
|
|
* Agent 可以接管主配置文件,并在 `openresty -t` 失败时完整回滚
|
|
* 配置预览或 diff 能体现主配置与关键性能参数变化
|
|
* 本机模式与 Docker 模式都能完成一次成功发布和一次失败回滚验证
|
|
* 所有优化选项都由 Server 统一管理,不存在节点侧独立真相源
|
|
|
|
## 6. 当前执行原则
|
|
|
|
第五版执行时遵循:
|
|
|
|
* 先遵守 `docs/design.md` 的系统边界
|
|
* 再遵守 `docs/development-guidelines.md` 与 `docs/frontend-development-guidelines.md`
|
|
* OpenResty 优化参数优先复用现有 `Option` 与设置页结构,避免引入新配置中心
|
|
* 主配置文件接管必须和发布链路、回滚链路一起设计,不能只补局部写文件能力
|
|
* 需求不改变边界时,直接按现有模型与结构增量实现
|
|
* 需求改变边界时,先补设计,再补计划,再编码
|
|
|
|
---
|
|
|
|
## 7. 新需求进入条件
|
|
|
|
满足以下任一情况时,才需要新增计划项:
|
|
|
|
* 引入新的核心业务对象或系统边界
|
|
* 引入新的基础设施依赖
|
|
* 调整部署模式或运行方式
|
|
* 大规模重构前后端主干结构
|
|
|
|
否则默认按常规开发任务处理,不再单独维护阶段计划。
|