环境与配置

隔离原则

  • 每个子项目一份独立 .env,运行时配置(端口、NATS、数据库连接)由该子项目自持;敏感配置不进版本控制。
  • 子项目环境变量互不干扰,根目录不集中接管。
  • 共享配置只有 TypeScript 基座(tsconfig.base.json)等构建期内容。

连接拓扑

子项目 必要连接
全部 services NATS_URL、DATABASE_URL
全部 workers NATS_URL、所属服务 DATABASE_URL
passport_web api_service 地址(服务端侧)
admin_web api_service 地址
openapi NATS_URL(服务端调业务服务)

决策参考

场景 做法
多环境(dev / staging / prod) 每子项目按环境各备一份 .env,随发布渠道分发
配置项变更 先更新配置参考(站内搜索 ?配置参考),再改代码
跨服务共享的常量 进 libs/common,禁止在各服务复制字面量