架构图
首先,我们来看一个简易的微服务架构图:
从上图中我们可以看到 Spring Cloud 的五大组件大致如下:(网上对于五大组件众说纷纭,这里我们采用B站老师的说法。)
五大组件
注册中心(Service Registry)
:提供了服务注册和发现的功能,用于管理和跟踪服务的地址和状态。常用的注册中心组件有 Eureka 和 Consul。负载均衡(Load Banlancer)
:帮助将请求按照一定的策略分发到不同的服务实例上,以实现请求的负载均衡。常用的负载均衡组件有 Netflix Ribbon 和 Spring Cloud LoadBalancer。远程调用(Remote Procedure Call)
:通过远程调用技术实现不同服务之间的通信,常见的远程调用方式有基于 REST 的服务间调用和基于消息的服务间调用。服务熔断(Circuit Breaker)
:用于在服务之间进行通信时,当被调用的服务出现故障或延迟时,实现自动的快速失败相应和熔断机制,避免级联故障。常用的熔断器组件有 Netflix Hystrix 和 Resilience4j。网关(API Gateway)
:作为服务的统一入口,用于处理请求的路由、过滤、转发和协议转换等功能。常用的网关组件有 Spring Cloud Gateway 和 Netflix Zuul。
Spring Cloud Alibaba 微服务
随着 Spring Cloud Alibaba 在国内兴起,我们项目中也会使用一些阿里巴巴的组件:
注册中心
/配置中心
:Nacos负载均衡
:Ribbon服务调用
:Feign服务保护
:Sentinel服务网关
:Gateway
整理完毕,完结撒花~ 🌻
参考地址:
1.微服务篇-02-springcloud-常见组件有哪些,https://www.bilibili.com/video/BV1yT411H7YK?p=48&vd_source=cf16f2e5f7c4612add10f9f9268a2c8a