Skip to content
bitzorcas
中EN

Guide

部署概览

从本地 Aspire 到生产 Host、配置、数据库、可观测性和商业 GA,规划 BitzOrcas 部署。

Last updated

BitzOrcas 不把本地编排方式直接复制成唯一生产拓扑。AppHost 负责开发环境;生产环境独立部署 API、JobHost 和可选 Gateway,并由平台提供数据库、消息、缓存、Secret 与 OTLP。

Host 边界

Host职责生产状态
BitzOrcas.ApiHTTP、认证授权、业务端点、轻量兜底调度独立部署
BitzOrcas.JobHostQuartz、工作流、审计保留等后台任务独立部署
BitzOrcas.Gateway可选边缘入口按 Profile/拓扑部署
BitzOrcas.AppHost本地 Aspire 编排不作为生产制品
ServiceDefaultsOTel、健康检查与服务默认配置被 Host 引用,不单独运行

典型生产依赖

Ingress / Gateway
→ API
→ SQL Server
→ RabbitMQ / CAP Outbox
→ Redis
→ S3-compatible 对象存储
→ OTLP Collector
JobHost
→ SQL Server / RabbitMQ / Redis / S3-compatible 对象存储 / OTLP Collector

实际依赖由 Profile 和启用模块决定。仓库没有把 Kubernetes 或某个云厂商模板声明成唯一正式部署方式;基础设施代码必须经过目标环境评审和演练。

上线顺序

  1. 准备 Secret、连接串、License 公钥与持久 DeploymentId。
  2. 备份数据库,按顺序执行尚未应用的迁移脚本。
  3. 部署 API/JobHost,但先不切入生产流量。
  4. 验证 /health/live、/health/ready、License 状态和 OTLP。
  5. 对商业包执行 Commercial GA;源码内部署至少完成对应 CI/acceptance。
  6. 灰度切流,观察错误率、延迟、队列积压和数据库指标。
  7. 达到停止条件立即回滚;观察期结束后再清理旧版本。

另见

最小发布证据包

每次发布至少保存源码 Commit、镜像或包摘要、配置版本、迁移清单、SBOM/provenance、门禁报告、审批人、开始/结束时间与回滚版本。环境中的 Secret 值不进入证据包,只记录 Secret 版本或引用。

Terminal window
# ① 发布前验证公开健康语义;ready 失败时不得继续切流。
curl -fsS "$CANDIDATE_URL/health/live"
curl -fsS "$CANDIDATE_URL/health/ready"
# ② 保存不可变镜像摘要,而不是只记录可移动 tag。
docker inspect --format='{{index .RepoDigests 0}}' "$IMAGE"

API 与 JobHost 应引用同一发布批次,但可以独立扩缩容和回滚。数据库迁移不可简单随应用回滚;每个破坏性变更都需要前向修复或明确恢复方案。


本章核心导航

100%

滚轮或按钮缩放 · 放大后拖动画面 · 双击切换 100% / 200%