《分布式应用架构技术能力要求第一部分:微服务平台》标准由中国信息通信研究院牵头,华为云、腾讯、阿里云、灵雀云、博云、新华三、石化盈科、烽火通信、中国电信共同参与撰写,经过多次讨论,形成了征求意见稿,将于2018年8月14日在“2018可信云大会——容器和微服务论坛”重磅发布。
微服务
微服务作为一种云原生(Cloud Native)应用架构,近年来得到了业界的广泛关注和应用。微服务应用专注某个具体业务,可以独立开发测试、部署维护,直接的好处是更加高效、便于管理。
微服务架构最早是由Martin Fowler在2014提出的,而微服务的广泛应用开始于NetFlix的一系列丰富的开源微服务应用框架。 微服务架构模式打破了传统单一的大型应用系统,拆分成独立的组件,各个微服务之间是松耦合的,微服务可以使用不同的编程语言,架构保持去中心化。微服务架构的优点主要包括:高解耦可扩展性强,提升业务敏捷性,不受限于任何技术栈。
微服务框架
微服务的分布式架构固有的复杂性,以及其应用系统被拆分成为更小的组件,组件之间通过REST或者RPC进行服务调用,带来了管理和运营层面的挑战。微服务框架大大降低了开发的难度,同时能够提供服务治理能力,如服务注册、服务发现、服务熔断、服务降级等。
众所周知,微服务框架的代表Spring Cloud占据了微服务的主流市场,其实国内最早在2010年,阿里巴巴就开源了分布式服务治理框架Dubbo。除此之外,微服务开源框架还有微博Motan、华为ServiceComb、腾讯Tars等后起之秀。
微服务框架分为侵入式和非侵入式,区别在于用户代码是否对框架有依赖。Service Mesh(服务网格)作为非侵入式框架,势必将微服务进行到底,用户能够更加轻松地接入微服务框架,应用服务代码更加纯粹地去实现自己的业务逻辑。
微服务平台
作为本次标准的落点,微服务平台是提供微服务开发、治理的应用管理平台。标准除了对微服务框架进行要求之外,平台需要提供额外的支撑能力,如监控告警、资源管理、配置中心、日志中心等。相比微服务框架,微服务平台需要具备更高的产品成熟度。
目前微服务平台的厂商主要有云服务商及容器解决方案商,面向企业的一站式PaaS平台服务,提供应用云上托管解决方案,帮助企业简化部署、监控、运维和治理等应用生命周期管理问题;快速构建基于微服务架构的分布式应用。
标准内容概述
标准将从四个方面对微服务平台能力提出具体规范和要求:
一是IT基础设施层,提供微服务所依赖的基础资源调度能力。
二是公共基础服务,提供平台相关的通用基础服务。
三是微服务框架,涉及微服务开发、服务治理能力。
四是微服务管理平台,提供微服务监控、发布管理、服务降级等能力。