Dubbo学习(五)——负载均衡

一、搭建负载均衡环境

1 修改提供者01的实现和配置文件

public class SomeServiceImpl implements SomeService {
    @Override
    public String hello(String name) {
        System.out.println("执行【第一个】提供者的hello() ");
        return "【第一个】提供者";
    }
}

2 修改提供者02的实现和配置文件

public class SomeServiceImpl implements SomeService {
    @Override
    public String hello(String name) {
        System.out.println("执行【第二个】提供者的hello() ");
        return "【第二个】提供者";
    }
}

 

3 修改提供者03的实现和配置文件

public class SomeServiceImpl implements SomeService {
    @Override
    public String hello(String name) {
        System.out.println("执行【第三个】提供者的hello() ");
        return "【第三个】提供者";
    }
}

 

二、负载均衡算法

若消费者与提供者均设置了负载均衡策略,消费者端设置的优先级高。 若消费者端没有显式的设置,但提供者端显式的设置了,且同一个服务(接口名、版本 号、分组都相同)的负载均衡策略相同。消费者调用时会按照提供者设置的策略调用。  若多个提供者端设置的不相同,则最后一个注册的会将前面注册的信息覆盖。

1  Dubbo 内置的负载均衡算法 

Dubbo 内置了四种负载均衡算法

(1)random 

随机算法,是 Dubbo 默认的负载均衡算法。存在服务堆积问题。 

(2)roundrobin 

轮询算法。按照设定好的权重依次进行调度。 

(3)roundrobin 

最少活跃度调度算法。即被调度的次数越少,其优选级就越高,被调度到的机率就越高。 

(4)consistenthash 

一致性 hash 算法。对于相同参数的请求,其会被路由到相同的提供者。 

2   指定负载均衡算法  

负载均衡算法可以在消费者端指定,也可以在提供者端指定。 

(1)消费端指定

(2)服务端制定

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值