微服务应用使得快速修改成为可能:因为团队在不断地开发新的服务、停用现有服务或者重构现有功能,所以应用也会随着时间慢慢地演进。
架构师或者技术负责人的工作就是要确保系统能够不断演进,而不是采用了固化的设计方案。如果微服务应用是一座城市的话,开发者就是市政府的规划师。
架构师的职责是确保应用的技术基础能够支持快节奏的开发以及频繁的变化。架构师应该具备纵观全局的能力,确保应用的全局需求都能得到满足,并进一步指导应用的演进发展。
1)应用和组织远大的战略目标是一致的。
2)团队共同承担一套通用的技术价值观和期望。
3)跨领域的内容——诸如可观察性、部署、服务间通信——应该满足不同团队的需要。
4)面对变化,整个应用是灵活可扩展的。
为了实现这些目标,架构师应该通过两种方式来指导开发:
第一,准则——为了实现更高一层的技术目标或者组织目标,团队要遵循的一套指南;
第二,概念模型——系统内部相互联系以及应用层面的模式的抽象模型。
摘取自 摩根·布鲁斯和保罗·A.佩雷拉的《微服务实战》
网友评论