架构量子是什么
架构量子是可独立部署、且具有高功能内聚的最小单元:量子内部的组件需要一起发布,量子之间通过明确定义的接口交互。它把「独立部署」作为划分边界的硬标准,用来识别那些看起来是独立服务、实际必须同步发布的伪独立单元,因此常用于评估微服务拆分的真实程度与部署边界是否合理。
怎么用它做边界检查
检查四个维度:能否单独发布而不牵动其他单元;是否独占数据存储或至少数据分区边界清楚;是否存在必须同版本发布的同步调用链;故障是否被限制在本单元内不向外扩散。若两个服务必须同时上线才能工作,它们在部署意义上属于同一个量子,此时要么合并,要么先解除耦合再拆,否则发布窗口会永远绑在一起。
基本信息
| 判定标准 | 能否独立部署独立发布,内部是否存在必须同步的耦合 |
|---|---|
| 常见用途 | 识别伪独立服务:共享数据库与强同步耦合会打破边界 |
| 检查维度 | 部署、数据、同步耦合与故障域四个方面 |
| 主要收益 | 边界清晰,独立演进与故障隔离更可靠 |
| 关联判断 | 量子边界与团队边界不一致时容易出现职责推诿 |
边界检查
| 检查项 | 独立量子的表现 |
|---|---|
| 部署 | 可单独发布,不牵动其他单元 |
| 数据 | 独占数据存储或分区边界明确 |
| 同步耦合 | 无必须同版本发布的调用链 |
| 故障域 | 故障限制在本单元内不向外扩散 |
| 团队 | 边界与团队职责范围基本对齐 |
典型使用场景
- 微服务拆分前评估拆分后能否真正独立发布
- 识别因共享数据库而绑定的服务集群,规划数据拆分顺序
- 排查发布窗口冲突,判断哪些服务实际属于同一个量子
- 为团队划分职责边界提供可验证的判定标准
当两个服务必须同时发布才能正常工作,它们在部署意义上属于同一量子,应考虑合并或先解除耦合,而不是维持表面独立。
量子边界与团队边界长期不一致会造成职责推诿:交付出问题时双方都认为属于对方范围,故障响应被明显拖慢。