架构宝典
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

3.6 一个反馈闭环实例

互联网时代,企业在瞬息万变的市场中赢得和保持竞争优势的核心在于持续创新。Netflix的成功实践告诉我们:一方面,企业战略、文化、组织/团队、流程、架构对持续创新至关重要;另一方面,微服务、云计算和PaaS等技术手段对持续创新和快速闭环起到基础性的支撑作用。

图3.10是典型的传统开发模式,其中硬件资源的审批、采购和安装配置花费几周甚至几个月的时间都是非常普遍的,这会造成研发效率低下,反馈速度缓慢。

图3.10

如图3.11所示的是基于IaaS的开发模式,如图3.12所示的是IaaS开发模式下的团队协作模式。IaaS云支持硬件资源的快速自助式提供,可以将研发和反馈效率提升一个量级。但是,中间件的安装配置、测试、发布和监控运维等环节仍然需要很多协调、移交和手工的重复性工作,研发和反馈的效率仍然受限。

图3.11

图3.12

如图3.13所示的是基于PaaS的开发模式,如图3.14所示的是对应的团队协作模式,该模式将中间件、持续集成、发布和监控运维等基础能力自动化并封装在PaaS云平台中,可以支持研发人员进行快速自助式部署。在理想情况下,研发人员可以快速达成产品创新闭环。

图3.13

图3.14

在Netflix的微服务架构模式下,微服务是一个独立的开发、测试、发布和扩容单位,不同的团队可以互不干扰,独立演化各自的微服务,这是一种自适应的和支持持续业务创新的架构风格。

微服务架构需要基础PaaS平台的支撑:将微服务管理(服务发现、配置、路由、容错和负载均衡),持续集成和发布,监控和自动化运维等基础核心能力抽象、下沉并封装在平台内,让研发人员可以专注于微服务业务逻辑的实现,支持微服务的独立自助式部署,达成快速迭代和闭环反馈。Gartner把这个基础平台称为外架构(Outer Architecture),把居住在这个平台内的微服务架构称为内架构(Inner Architecture),如图3.15所示。

图3.15