Ribbon负载均衡算法,你了解吗?

Ribbon是一个基于HTTP和TCP的客户端负载均衡工具,它是基于Netflix Ribbon实现的。Ribbon不像Spring Cloud服务注册中心、配置中心、API网关那样独立部署,它几乎存在于每个Spring Cloud微服务中,包括Feign提供的声明式服务调用也是基于Ribbon实现的。

Ribbon默认提供了多种负载均衡算法,例如轮询、随机等。轮询策略表示每次都顺序取下一个provider,比如一共有5个provider,第1次取第1个,第2次取第2个,第3次取第3个,以此类推。此外,Ribbon还支持自定义负载均衡算法,以满足特定的业务需求。

Ribbon的负载均衡流程大致如下:客户端发起请求,请求会被Ribbon拦截,Ribbon会去注册中心读取请求的服务列表,将获取注册信息服务列表之后缓存到本地,然后根据返回的服务列表进行负载均衡,选择一个服务进行调用。

发表评论

后才能评论