找回密码
立即注册
搜索
热搜: Java Python Linux Go
发回帖 发新帖

3062

积分

0

好友

457

主题
发表于 3 天前 | 查看: 17| 回复: 0

MSE 是什么

微服务引擎 MSE(Microservice Engine)是一个面向业界主流开源微服务框架 Spring Cloud 和 Dubbo 的一站式微服务平台。其由四个主要部分组成:微服务治理中心、微服务注册中心、微服务配置中心、微服务网关。

先从一些关键词了解下各个组件的特性:

  • 微服务治理中心:无侵入增强主流开源微服务框架,丰富的服务治理功能
  • 微服务注册中心/配置中心:全托管,高可用,丰富完善的监控报警,丰富的控制台运维操作,引擎类型丰富
  • 微服务网关:全托管,支持主流开源微服务网关

作为 MSE 产品族的组件,每个部分都是可插拔的,即可单独使用微服务治理中心,也可单独使用其他组件。当然,如果选择使用全部的 MSE 组件,你将会获得微服务生态的最佳实践。

MSE 发展历史

MSE 在 2019 年 7 月正式上线,最早仅支持 Zookeeper 微服务注册中心,经历了数月的公测期,在 2020 年 1 月正式商业化,新增支持了两个注册中心类型 Nacos 和 Eureka。

商业化之后,MSE 主要的产品演进方向包含了以下几个方面:

  • Region 开服。 MSE 先后完成了国内 5 大 Region(杭州、上海、张家口、北京、深圳)以及国外三个 Region (弗吉尼亚、新加坡、俄罗斯)的开服,未来 MSE 将会做到全球开服。
  • 产品形态拓宽。 2020 年 6 月,MSE 引入微服务治理中心,该组件通过无侵入的方式,为 Spring Cloud 和 Dubbo 等主流微服务框架提供了能力增强,如服务鉴权、无损下线、标签路由、服务测试;2020 年 7 月支持了 Nacos 配置中心,用户只需申请 1.2.1 版本的 Nacos 即可同时获得注册中心和配置中心的能力;2020 年 8 月,MSE 引入微服务网关,提供全托管的 Zuul、Kong、Spring Cloud Gateway。
  • 产品能力演进。 目前 MSE 还处于高速发展时期,几乎每个月份都有较大功能的上线,并对已有特性进行增强,如微服务治理中心现已支持 ECS、ACK 等产品形式的接入,支持 SpringCloud 和 Dubbo 微服务框架类型的治理;MSE Zookeeper 提供开源欠缺的管控能力,提供了可视化编辑能力,节点监控能力。

提到微服务,人们最容易联想的词可能有这些:服务发现、服务治理、路由,而这些微服务的概念,恰巧与 MSE 的各个组成部分对应。

MSE 注册中心&配置中心

服务发现这个词由来已久,DNS + LVS + Nginx 这样的架构其实就是最早期的服务发现。随着 Dubbo 和 SpringCloud 在国内遍地开花,微服务开发者们也将服务发现这一概念与 Zookeeper,Eureka、Nacos、Consul、Etcd 绑定了起来。

回过头来看,Zookeeper 的设计初衷可能并非专为微服务。单从产品本身出发,称其为分布式协调组件或许更为恰当。这很大程度上与 Dubbo 在国内早期的普及相关,那时 SpringCloud + Eureka 尚未流行,K8s + Etcd 更是鲜为人知,可以说 Dubbo + Zookeeper 的组合,是国内最早落地微服务的经典解决方案之一。

随着微服务架构的普及,一些公司在实践中遇到了瓶颈,其中一部分就与 Zookeeper 相关。时间来到 2018 年,阿里将内部自用的注册中心开源了出来,这便是今天的 Nacos。当越来越多的同类产品出现,好的一面是选择变多了,但同时也让架构师面临选择困难。限于篇幅,我们不在这里探讨各个注册中心孰优孰劣,但可以确定的是:主流的注册中心,MSE 都支持。

MSE 基于对使用者的调研和目前微服务的发展方向,为阿里云用户提供了 Zookeeper、Nacos 和 Eureka 的托管。相比开源产品,MSE 的各个引擎类型可以无缝对接开源 SDK,功能上是开源版本的超集。其差异化增强能力主要体现在全托管、高可用、丰富的监控报警、完善的可视化管控能力

以 MSE Zookeeper 为例,其【数据管理】功能可以对 Znode 节点进行可视化的编辑,这弥补了开源 Zookeeper 没有控制台的空白。

MSE Zookeeper 数据管理界面截图,显示节点编辑功能

【监控】功能可以对引擎本身的相关指标进行监控,MSE Zookeeper 目前支持连接数、TPS/QPS、Znode 数量、请求排队数和平均请求耗时指标的监控,并且可以在【报警管理策略】中配置报警规则。

MSE Zookeeper 监控图表截图

MSE 报警规则创建界面截图

MSE 的高可用保障策略分为几方面:一方面建议用户购买3节点及以上的集群,以利于注册中心一致性协议的选主;另一方面,依托于底层的 K8s 架构,保障节点数量稳定,并自动将集群的不同节点分布在不同可用区,进一步保障可用性。

我们提到 Zookeeper 设计之初并非专为注册中心,而 Nacos 则是专门为微服务场景设计的,其本身就包含了服务和配置两个领域模型。因此,如果用户选择了 MSE Nacos 引擎,将同时获得配置中心的能力。

MSE Nacos 配置管理界面截图

MSE 治理中心

提到微服务治理,即便是最简单的服务查询、规则编辑功能,在众多开源微服务框架中也属罕见。Apache Dubbo 算是比较出众的一个,其配套了开源的 Dubbo Admin,提供了服务查询、路由配置等能力,但其演进速度有时难以跟上主框架的步伐。

MSE 治理中心的核心目标,就是为各类微服务框架提供通用的治理能力,且这些能力不受你所使用的具体框架类型限制。

长期以来,云上用户在微服务架构选型时面临一个难题:选择云厂商几乎等同于选择一套特定的微服务架构与 SDK。这对云产品开发固然有利,但却极大地限制了用户,特别是那些在上云前已有技术积累的团队的选择空间。

为了避免这种绑定,MSE 治理中心的所有能力都采用无侵入式实现。用户无需修改任何一行代码,即可获得丰富的服务治理功能。目前,MSE 治理中心仍处于公测阶段,如果你使用的是 Dubbo 或 SpringCloud,不仅可以零代码接入,还可以免费使用包括服务查询、服务测试、金丝雀发布和无损下线在内的多项能力。

【服务查询】功能可以将应用的服务信息、接口信息以细粒度的方式展示出来。

MSE 服务查询界面截图,展示服务详情与元数据

【标签路由】功能支持应用实现灰度发布。

MSE 标签路由管理界面截图

【服务测试】功能支持用户在开发阶段直接对 Dubbo 和 SpringCloud 接口进行测试,省去手动编写测试代码的麻烦。

MSE 服务测试界面截图

微服务网关

微服务网关是位于微服务集群之前的系统,作为整个体系面向外部访问者的唯一入口,负责管理授权、访问控制、流量路由等。这样一来,后端的业务服务就被网关保护起来,对外部调用者透明,从而可以更专注于业务逻辑的开发,而非策略性基础设施的处理。

微服务网关与微服务体系无缝协作,能够基于注册中心动态感知服务节点状态,灵活进行路由、限流、鉴权、负载均衡等各种策略控制,变更即时生效,并能与治理中心的服务治理能力无缝集成。

目前,MSE 微服务网关支持对 Zuul、Kong 和 Spring Cloud Gateway 进行全托管。

总结

随着微服务架构被越来越多的企业所采纳,注册中心和配置中心已成为其中的核心组件。相比于自行搭建和维护开源方案,采用 MSE 微服务引擎能显著降低运维复杂度,并提供更高的可用性保障。

其新增的微服务治理功能,无需修改任何代码与配置,兼容 Spring Cloud/Dubbo 近五年的所有版本,目前正在免费公测中,为开发者提供了极大的便利。如果你想了解更多关于云原生和微服务架构的实践与讨论,欢迎访问 云栈社区 与其他开发者交流。




上一篇:微服务架构下注册中心管理难题与MSE、Knative的Serverless编排实践
下一篇:数据库智能自治架构演进:从被动运维到eBPF+AI驱动的未来
您需要登录后才可以回帖 登录 | 立即注册

手机版|小黑屋|网站地图|云栈社区 ( 苏ICP备2022046150号-2 )

GMT+8, 2026-3-10 12:16 , Processed in 0.562471 second(s), 40 queries , Gzip On.

Powered by Discuz! X3.5

© 2025-2026 云栈社区.

快速回复 返回顶部 返回列表