java常见微服务架构

1.dubbo

阿里巴巴研发的一款微服务组件,服务调用使用RPC

服务注册Zookeeper

服务调用dubbo

2.Spring Cloud Netflix

Spring Cloud 的第一代实现,主要由 Eureka、Ribbon、Feign、Hystrix 等组件组成。

服务注册Eureka、Zookeeper、Consul

服务调用Ribbon、LoadBalancer、Feign、OpenFeign

服务降级Hystrix、resilience4j、Sentinel

服务网关Zuul、gateway

服务配置Config

服务主线Bus

3.Spring Cloud Alibaba

 Spring Cloud 的第二代实现,主要由 Nacos、Sentinel、Seata 等组件组成。

服务注册Nacos

服务调用Ribbon、LoadBalancer、Feign、OpenFeign

服务降级Sentinel

服务网关gateway

服务配置Nacos

服务主线Nacos

4.Service Mesh

下一代微服务,常用框架springboot+gprc+istio+k8s,Sidecar代理模式(启用sidecar 注入)。不侵入业务代码,微服务功能在k8s层面来做。

与上一代组件类比。

服务注册 PilotDiscovery 若从旧微服务的注册中心迁移,Consul 可直接通过配置迁移,其他方式均需要改造。

服务调用 istio

网关 Envoy代理组件

限流 virtualservice组件 DestinationRule组件

服务网格组件

数据平面 Linked、Envoy、Nginmesh、Aspen Mesh

控制平面 Istio、Conduit、Nleson、SmartStack


版权声明:本文为gsls200808原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。