15,微服务负载均衡组件-Ribbon

2020-05-25 00:00:00 算法 服务 重试 策略 负载均衡

1,什么是Ribbon

Ribbon是Netflix发布的开源项目,其主要功能是提供客户端侧负载均衡算法。Ribbon客户端组件提供一系列列完善的配置项如连接超时,重试等。Ribbon会自动的帮助你基于某种规则(如轮询,随机等)去连接这些机器,同时,Ribbon也支持自定义的负载均衡算法

在 SpringCloud 中,Ribbon利用从Eureka中读取到的服务提供者列表信息,在调用服务节点提供的服务时,基于内置的负载均衡算法,进行请求服务。

2,Ribbon负载均衡和Nginx的负载均衡有什么不同?(面试题)

一般实现负载均衡,会有两个选择,客户端负载均衡和服务端的负载均衡

Nginx是服务器端负载均衡,负载均衡的策略算法是在服务器端实现的。

Ribbon是客户端负载均衡,负载均衡算法是由调用者本身维护的


3,Ribbon提供的负载均衡策略有哪些?

Ribbon内置了多种负载均衡策略,内部负责复杂均衡的接口为 com.netflix.loadbalancer.IRule;

com.netflix.loadbalancer.RoundRobinRule :轮询策略
com.netflix.loadbalancer.RandomRule :随机策略 
com.netflix.loadbalancer.BestAvailableRule :佳可用策略

相关文章