一、客户端负载均衡器 Ribbon
客户端向服务器如Eureka Server拉取已经注册的服务信息,然后根据负载均衡策略,
直接命中哪一台服务器发送请求。 整个过程在客户端完成,不需要服务器的参与。
Spring Cloud客户端的负载均衡就是Ribbon组件。
包括
1、RestTemplate
2、Feign
3、Zuul
二、Ribbon实现负载均衡的核心有三点
服务发现: 发现依赖服务的列表,就是依据服务的名字,把该服务所有的实例都找出来。
服务选择规则: 依据规则策略,从多个服务中选择一个有效的服务。
服务监听:检查失效的服务,做到高效剔除。
三、Ribbon的主要组件
1、ServerList:
2、IRule
3、ServerListFilter
流程: 通过ServerList获得所有可用的服务列表,通过ServerListFilter顾虑一部分地址,最后在剩下的地址中,通过IRule选择一个实例作为最终目标结果