持续演进的Cloud Native:云原生架构下微服务最佳实践
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

1.3 Cloud Native背后的诉求

在 Amazon 曾经出现过一个这样的问题,当团队人数快速增长之后,沟通效率越来越低,如何提高沟通效率呢?如何减少会议呢?最好的方式当然是不开会,那么怎么才能不开会却实现高效沟通呢?那就是让各个团队关注不同的模块。拆分服务就是一种方式,让每个团队独立负责一个服务,通过契约化的接口缩小沟通范围,只要接口不发生变化,就不需要过分关注外部的变化。这就是Amazon拆分服务的初衷。

现在正处于一个业务快速增长的时代,产品需要更快的交付速度,更好的用户体验,机会转瞬即逝。为什么传统企业打不过互联网公司呢?一个重要的原因是产品的进化速度太慢,不能根据用户的反馈快速迭代,当某个功能用户使用的频率比较高时,产品的方向可能会发生转变。

交付速度的提高不能以降低可用性为代价。我们都知道更新是可用性的“天敌”,只要更新就可能发生故障。传统企业提升可用性的一种方法就是少发布、多审核,这显然是和高交付速度背道而驰的。Cloud Native通过一系列工具、方法减少发布导致的可用性问题,而不是减少发布次数。

在微服务架构中,服务数量大幅增加,性能、一致性等问题越来越严重,架构变得越来越复杂,如何解决这些问题?在本书中可以找到想要的答案。