用途:决定如何把系统切成可部署服务(或是否该切),以及服务间如何发现和调用。它位于边缘层与数据层之间。
主要能力:评估拆分驱动因素(独立部署、差异化扩缩容、团队所有权);按业务能力/限界上下文划边界;为每条接缝选择同步(REST/gRPC)或异步通信;决定是否引入 API 网关/BFF、服务发现与 mesh;分析粒度错误、分布式事务、重试风暴、可调试性下降等压力场景。
使用方式:先澄清驱动因素,若无真实驱动则停在(模块化)单体;默认选最简单方案,仅抽取有真实理由的接缝;按业务能力划分使数据与所属逻辑同处;每次调用单独选同步或异步;按需再加网关与发现层;提交前对边界做压力测试。若用户指定云厂商,可读 references/providers/<provider>.md;无对应文件则用通用做法。
适用场景:已有第二个服务的需求、团队需独立部署、某组件扩缩容差异极大、现有系统过于“话多”或难改,或有人默认提议微服务时。
限制:新产品/小团队/未验证领域应先用单体或模块化单体,过早拆分承担分布式成本;不要默认微服务,不要让网关堆积业务逻辑成隐藏单体,不要为少量服务上 mesh。跨服务写不能是单次 ACID 事务,需 saga/outbox 或保持事务本地。具体实现细节、收费与平台信息暂未提供。