集群下Dubbo负载均衡配置

  在集群负载均衡时,Dubbo提供了4种均衡策略,默认为Random(随机调用)

负载均衡策略:

  1)、Random LoadBalance(随机,按照权重的设置随机概率)

  

集群下Dubbo负载均衡配置

  2)、RoundRobin LoadBalance(轮询,按照权重设置轮询比率)

集群下Dubbo负载均衡配置

请求次数   提供者ID  
1   服务提供者1  
2   服务提供者2  
3   服务提供者3  
4   服务提供者1  
5   服务提供者2  
6   服务提供者2  
7   服务提供者2  

  3)、LeastActive LoadBalance(最少活跃数,ping值(延迟低)的调用,相同延迟的情况下随机)

集群下Dubbo负载均衡配置

  由于服务提供者1的延迟低,在保证延迟不变的情况下,服务提供者1将始终被调用

  4)、ConsistentHash LoadBalance

  一致性Hash,相同参数的请求总是发到同一个服务提供者(相同参数默认是指请求的第一个参数)

  当原本发送到特定服务提供者的请求,而该服务提供者刚好宕掉,那么该请求将基于虚拟节点平摊到其它服务提供者,不会引起剧烈的变动。

集群下Dubbo负载均衡配置

*修改默认的负载均衡配置

  通过暴露或引用服务的loadbalance属性修改

  

1 @Component //org.springframework.stereotype.Component 2 @Service(loadbalance = "roundrobin") //com.alibaba.dubbo.config.annotation.Service 3 public class UserServiceImpl implements UserService { 4 ... 5 }

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/zwsxyg.html