开发指南后端开发
架构与资源边界
区分后端项目、BuildJob、Artifact、Hosted Service、环境和部署。
后端应用的构建面与运行面相互独立:
| 资源 | 职责 | 是否可变 |
|---|---|---|
| Project | 保存源码和构建配置 | 可持续修改 |
| BuildJob | 记录一次测试与构建过程 | 完成后保留状态和日志 |
| Artifact | 保存一次构建产生的可部署制品 | 不可变 |
| Hosted Service | 后端服务的稳定身份 | 可更新元数据 |
| Environment | 开发、测试、生产等运行配置 | 可产生配置修订 |
| Deployment | 把一个 Artifact 部署到一个环境 | 每次部署形成记录 |
| Endpoint | 对调用方提供稳定访问地址 | 由部署和路由状态支撑 |
核心不变量是:
同一份源码构建一次
-> 得到一个 artifactId
-> 同一个 artifactId 逐级部署到开发、测试和生产Hosted Service 部署只接收真正的 artifactId,不会把 buildJobId 当成制品,也不会在部署阶段隐式重新构建。
配置边界
- 源码和 Artifact 保存与环境无关的程序逻辑。
- 数据库、密钥、第三方 token 和环境差异配置在 Environment 或 Config Provider 中管理。
- 数据库服务负责数据库 Profile 或 Allocation;Hosted Service 只绑定并解析对应配置。
- Endpoint 鉴权由 Hosted Service consumer/token 或应用自身鉴权负责。
- 业务用户权限由后端应用自身或上游受信任身份上下文负责。
不要把生产配置打进 Artifact,也不要让构建脚本根据目标环境生成内容不同但版本相同的制品。