微服务架构:降低协调成本与实践指南
1. 微服务架构的优势:降低协调成本
全球众多公司在实施微服务架构方面取得了成功,软件交付速度普遍得到提升。这一改善源于微服务架构的根本优势:降低协调成本。
在软件工程中,提高速度的方法有很多,微服务架构只是其中之一。例如,你可以通过偷工减料来快速构建系统,从而产生“技术债务”,后续再处理;或者降低对稳定性和安全性的要求,尽快推出产品。在某些情况下,这些方法是合理的。
然而,金融、医疗和政府等领域的系统不允许为了速度而牺牲安全性。但市场竞争同样要求这些行业提高速度,微服务系统在这方面表现出色。它提供了一种架构方法,让你在不牺牲安全性的前提下提高速度,并且可以大规模应用。
1.1 协调成本问题
构建复杂软件并非易事。在现实生活中,开发高质量的软件需要众多人员和大量时间。多个团队在复杂项目中通常独立开发系统的不同部分,遵循各自的路线图和进度。
例如,负责会计工作流的团队领导简,其团队完成一个冲刺后,依赖于由泰隆领导的负责运输模块团队开发的组件。由于路线图相互独立,泰隆的团队可能尚未完成所需组件的开发。此时,简面临两个选择:
- 等待组件交付,进行适当的集成测试,优先考虑安全性,但会牺牲速度,让团队停工。
- 依赖与泰隆团队达成的接口合同,假设其团队会按计划交付组件,继续推进工作,提高团队速度,但可能会影响系统的整体安全性,因为没有尽早进行集成测试。
在复杂的多团队环境中,团队领导经常面临在忽略协调成本以保持进度和承认协调需求而放慢速度之间做出选择。在复杂系统中,这种选择频繁出现时,速度和安全性之间会产生明显的矛盾。
超级会员免费看
订阅专栏 解锁全文
168万+

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



