服务治理

服务治理可以说是微服务架构中最为核心和基础的模块,它主要用来实现各个微服务实例的自动化注册和发现。

比较成熟的解决方案如下:

名称 所属公司 是否开源 资料文档 备注
Dubbo 阿里巴巴
HSF 阿里巴巴 目前已作为阿里云产品EDAS其中的套件开放使用
Tars 腾讯 已作为腾讯云应用框架对外提供使用
JSF 京东
Linkerd CNCF 原型是Twitter所构建的一个基于scala的可扩展RPC系统Finagle
Motan 新浪微博
istio 谷歌、IBM、Lyft

Ps:Spring Cloud Eureka是Spring Cloud Netflix 微服务套件的一部分,主要负责完成微服务架构中的服务治理功能。

1.阿里 - Dubbo

服务治理_第1张图片

2.阿里 - HSF

服务治理_第2张图片

3.腾讯 - Tars

服务治理_第3张图片

4.JSF

服务治理_第4张图片

5.CNCF - Linkerd

服务治理_第5张图片

6.新浪 - Motan

服务治理_第6张图片

7.istio

服务治理_第7张图片大部分(Linkerd除外、MSEC没找到架构图)方案的设计风格非常相似,都是通过库的方式在调用客户端做的服务发现。那么除了实际的RPC调用之外,主要多了这3个动作:注册、订阅、变更下发。除了这3个核心动作之外,其它的辅助操作还有统计上报、鉴权等等,这也是我们搭建一个服务治理框架需要实现的功能。从MVP的角度来说,注册、订阅、变更下发是最基础的核心功能。

服务治理的扩展

在企业中,我们可以针对服务治理做更多的扩展。比如:
  1.基于版本号的服务管理,可以用于灰度发布。
  2.请求的复制回放,用于模拟真实的流量进行压测。
  3.给请求打标签用于实时的在线压测。
  4.更灵活的负载均衡和路由策略。
  5.内置的熔断机制,避免整个分布式系统产生雪崩效应。

你可能感兴趣的:(架构,架构)