Spring Cloud五大组件
Spring Cloud是分布式微服务架构的一站式解决方案,在Spring Boot基础上能够轻松搭建微服务系统的架构。
现有Spring Cloud有两代实现:
一代:Spring Cloud Netflix,主要由:Eureka、Ribbon、Feign、Hystrix、Zuul|Gateway、Config等组件组成。
二代:Spring Cloud Alibaba,主要由:Nacos、Sentinel、Seata等组件组成。
一、服务治理组件
一代的服务治理组件为:Spring Cloud Netflix Eureka,主要负责Spring Cloud的服务发现与服务注册。
二代的服务治理组件为:Spring Cloud Alibaba Nacos,可以将Nacos理解为服务注册中心和配置中心的结合体;可以替换一代组件中的:Eureka、Config。
1.1 Eureka
Eureka采用C/S架构,包含两大组件:
Eureka Server:服务注册中心,其他微服务启动时,服务注册到Eureka Server。Eureka Server维护了可用服务列表,存储所有注册到Eureka Server的服务的信息。
自己搭建的Eureka Server服务端:https://gitee.com/Xiaoxinnolabi/my-eureka-server
Eureka Client:客户端,也就是微服务集群中的各个微服务。微服务启动后,Eureka Client会向Eureka Server发送心跳(默认周期30S)。Eureka Server在多个心跳周期内(默认90S)没有接收到某个Eureka Client的心跳,则将该Eureka Client从可用服务列表移除。
Eureka实现服务注册与发现的原理:
服务注册中心(Register Service):Eureka Server,提供服务注册和服务发现功能
服务提供者(Provider Service):Eureka Client,服务的提供者,以供应服务给消费者所发现。
服务消费者(Consumer Service):Eureka Client,服务的消费者,从服务注册中心获取服务列表,调用所需服务。
调用所需服务:通过HTTP或者消息中间件远程调用服务提供者提供的服务。
1.2 Nacos
Nacos 英文全称为 Dynamic Naming and Co
版权归原作者 Stephen_CY666 所有, 如有侵权,请联系我们删除。