在负载均衡时,dubbo提供了多种均衡策略,默认为random随机盗用。还可以自行扩展。
1.配置策略
2.配置文件
# 第一种
<dubbo:service interface="..." loadbalance="roundrobin" />
# 第二种
<dubbo:reference interface="..." loadbalance="roundrobin" />
# 第三种
<dubbo:service interface="...">
<dubbo:method name="..." loadbalance="roundrobin"/>
</dubbo:service>
二、直连提供者
1.场景
在开发及测试环境下,经常需要绕过注册中心,只测试指定服务提供者,这时候可能需要点对点直连,点对点直联方式,将以服务接口为单位,忽略注册中心的提供者列表,A接口配置点对点,不影响B接口从注册中心获取列表。
绕过注册中心,直接调用本地。本地有两个服务,用户服务和订单服务,订单服务直接调用本地的用户服务,不需要去注册中心找。
直连提供者,只需要在消费端配置。
2.配置文件配置
三、只订阅
1.解决问题
为方便开发测试,会在线下共用一个所有服务可用的注册中心,这时,如果一个正在开发的服务中的服务提供者注册,可能
会影响消费者不能正常运行。
2.解决方案
可以让服务提供者开发方,只订阅服务(开发的服务可能依赖其他服务),而不注册正在开发的服务,通过直连测试正在开发的服务。
比如有A、B、C三个服务,B服务的启动要依赖于A服务,C服务的启动要依赖于B服务。现在B服务有问题,就可以设置只在Zookeeper调用A服务,
但是B服务却不注册在Zookeeper上,C服务通过直连的方式来调用C服务。
3.图解和配置
四、只注册
小结:
官网上的内容特别详细,需要好好了解。