微服务的识别与范围界定:关键原则与实践案例
1. 微服务范围界定的重要性
在微服务架构中,为每个微服务确定合适的范围至关重要。如果微服务过大,创建新功能和修复漏洞的周期会变长;若过小,微服务之间的耦合度往往会增加;即便大小合适,但边界划分不当,耦合度同样会上升,进而导致更长的开发周期。因此,正确界定微服务的范围,才能充分发挥微服务架构的优势。
确定微服务范围的主要驱动因素是业务能力,次要驱动因素是支持性技术能力。遵循这两个驱动因素,能使微服务与以下特性相契合:
- 微服务负责单一能力。
- 微服务可独立部署。
- 微服务由一个或多个进程组成。
- 微服务拥有自己的数据存储。
- 小团队可以维护少量微服务。
- 微服务可替换。
其中,前两个和后两个特性只有在微服务范围合理的情况下才能实现。虽然还有实现层面的问题需要考虑,但范围界定错误会使微服务无法符合这些特性。
2. 以业务能力为主要驱动界定微服务范围
2.1 业务能力的定义
业务能力是组织为实现业务目标而开展的活动。例如,电商网站处理购物车的功能就是一项业务能力,它有助于实现用户购买商品的更广泛业务目标。一个企业通常有多个业务能力,共同支撑企业的整体运营。
将业务能力映射到微服务时,微服务对业务能力进行建模。有些情况下,微服务会完全实现并自动化整个业务能力;而在其他情况下,仅实现部分业务能力,实现部分自动化。无论哪种情况,微服务的范围都是该业务能力。
2.2 识别业务能力
深入了解业务领域有助于理解业务的运作方式,从而识别构成业务的业务能力
超级会员免费看
订阅专栏 解锁全文
1273

被折叠的 条评论
为什么被折叠?



