Spring Cloud五大组件以及工作原理
Spring Cloud 是一系列框架的有序集合,用于快速构建分布式系统的技术集合。它集成了Spring Boot,提供了服务发现与注册,配置中心,负载均衡,断路器,智能路由,微代理,控制总线等操作,都是用服务网格进行连接。
五大组件分别是:
服务发现——Netflix Eureka
Eureka 提供了服务发现的功能,它被用来在微服务系统中发现其他服务。服务端通过Eureka Server进行注册,客户端通过Eureka Server进行服务的发现和请求。
客户端负载均衡——Netflix Ribbon
Ribbon 是一个负载均衡器,可以将多个服务实例的请求分配到不同的服务实例。
断路器——Netflix Hystrix
Hystrix 是一个用于处理分布式系统的延迟和容错的库,可以防止系统间的级联故障,提高系统的弹性。
服务网关——Netflix Zuul
Zuul 是一种提供路由,监控,弹性,安全等边缘服务的系统。
分布式配置——Spring Cloud Config
Config 可以为微服务系统提供一个中心化的外部配置。
工作原理简述:
- 服务提供者在启动时,将自己的服务信息注册到Eureka Server。
- 服务消费者通过Eureka Server获取服务提供者的信息,并通过Ribbon进行调用。
- 服务之间通过Feign进行通信,Feign默认集成了Ribbon。
- 断路器Hystrix负责调用远程服务的线程池,并监控服务的状态,如果服务出现故障,则直接返回错误,不进行服务的连接。
- Zuul通过过滤器进行请求的路由,并可实现权限校验,请求限流等功能。
- 配置中心可以实现配置的动态更新。
评论已关闭