一项技术的全面普及和平民化,必然会经历标准化的过程,微服务技术也不例外。
2022云栖大会上,阿里云云原生应用平台总经理丁宇发布了微服务引擎MSE3.0,通过提供开放标准、易于集成、易于扩展、稳定可靠的注册和配置中心、微服务治理和云原生网关,降低了微服务在云原生时代的演进成本。
01 注册配置中心标准化,追求更强性能和更高稳定性
2018年,随着阿里巴巴将 Nacos、Sentinel、Seata 等一系列微服务组件开源后,使得国内微服务开发者在 Spring +Netflix 之外多了一套微服务开源技术栈的选择,这也加速了微服务技术的普及和落地。
如今,在注册和配置中心领域,Nacos 已经占据了50%以上的市场份额[1],成为了该领域的事实标准。今天,阿里云发微服务引擎 MSE 3.0,第一大核心能力就是注册和配置中心,相比 Nacos 等主流开源方案,MSE 的性能提升了40%,并通过提供70+的监控指标和健康检测,来帮助客户实现服务异常自治。
禾连健康是一家医疗健康行业的 SaaS 企业,通过 MSE 注册配置中心,提升开源注册配置中心性能达 50%,解决了业务高速发展中的扩展性问题,保障全国 200 多个城市、2000 多家医院体验业务的稳定性超 99.99%。
02 微服务治理标准化,追求降低发布风险和缩短构建周期
开源降低了微服务的构建门槛,加速解决了微服务的落地问题,但也面临着新的命题。
微服务架构承载起越来越多的在线业务,服务间的调用越来越复杂,但是,关系越复杂、小的技术问题越可能被放大,造成大的线上故障,尤其是在软件发布过程中,引入的风险更不可控。而微服务治理可以减少、甚至避免发布和管理大规模应用过程中遇到的稳定性问题。
但是,语言和服务框架的异构会使得微服务治理的成本呈现指数级的增加,一是因为每个开源框架和协议针对微服务治理的定义概念和能力都不一致,二是大家的治理模型和治理规则也是不同的。采用多种微服务框架或 RPC 框架混用的开发者比例已达 24%[2]。今年开源的 OpenSergo,正是为了解决在不同的微服务框架、通信协议之间达成共识,形成服务治理规范。
微服务引擎 MSE 3.0的第二大核心能力就是微服务治理,源于阿里巴巴10+的实践经验,遵循 OpenSergo 的微服务治理规范,通过无损上线下、全链路灰度、流量防护等技术手段帮助客户消除80%的软件变更风险、开发测试提效50%,将微服务的实施周期缩短30%。
致景科技是一家纺织产业的互联网企业,未修改任何代码就接入了 MSE 的微服务治理所有能力。基于开发环境隔离能力,测试环境的构建时间由天计算降低到分钟级别,微服务的实施周期缩短了30%,加速客户构建纺织服装纵向一体化的数智化综合服务平台。
03 云原生网关标准化,追求更强性能和更高安全性
在 K8s 流行之前,网关的入口流量分散、诉求不尽相同,存在着流量网关、API网关、微服务网关、集成网关的多种形态,且标准不统一,均是独立构建和维护;而 K8s 通过 ingress 统一了网关的通信规范,使得流量网关、微服务网关等进行统一构建和管理成为可能,因此诞生了下一代网关——云原生网关。同时,网关入口统一后,建设复杂度增加,在统一管理、性能、稳定性和安全性上有更高的诉求。
微服务引擎 MSE 3.0的第三大能力是云原生网关,我们将流量网关、微服务网关、安全网关三合一,架构上也做了升级,将实例级防护升级至路由级防护,整体性能,相比传统网关提升90%。
费芮互动专注于移动营销领域的创新和研发,每日需要处理1 亿+粉丝交互,以及 4 万+线下门店、每月 3000 万+笔的移动支付需求,对网关接入层的性能和稳定性有着较高的要求。通过 MSE 云原生网关构建了零信任架构,大幅提升业务入口安全性,采用软硬件一体化,性能提升90%,响应时间下降50% 。
云原生网关虽好,但也存在着诸多开源或商业化的不同技术选型。因此,MSE 决定将云原生网关进行开源,提供标准化、高集成、易扩展、热更新的云原生网关,命名为 Higress,既是对 ingress 标准的遵循,也包含了着高性能 high 的寓意。
Higress 源自阿里巴巴内部电商、交易等核心生产场景的实践沉淀,遵循 Ingress/Gateway API 标准,将流量网关、微服务网关、安全网关三合一,并在此基础上扩展了服务管理插件、安全类插件和自定义插件,高度集成 K8s 和微服务生态,包括 Nacos 注册和配置、Sentinel 限流降级等能力,并支持规则变更毫秒级生效等热更新能力。
MSE 经历了3年多的时间,发展到3.0,这3年,也正是国内微服务的快速普及过程。从初期的微服务的构建需求、解决微服务落地0到1的问题,到微服务的治理需求、解决用好管好微服务的问题,再到 K8s 统一网关入口的需求、解决微服务原生化的问题。MSE 3.0 恰逢其时的帮助客户解决了微服务的这些问题。