Dubbo:服务分组和多版本

服务分组

当一个接口有多种实现时,可以用 group 区分。

  1. 提供者配置
    <bean id="demoService" class="com.github.davidji80.dubbo.providerimpl.DemoServiceImpl" />
    <bean id="demoServiceGroup" class="com.github.davidji80.dubbo.providerimpl.DemoServiceGroupImpl" />

    <dubbo:service group="default" interface="com.github.davidji80.dubbo.service.DemoService"
                   ref="demoService" protocol="dubbo"/>
    <dubbo:service group="group" interface="com.github.davidji80.dubbo.service.DemoService"
                   ref="demoServiceGroup" protocol="rmi"/>
  1. 消费者配置
<dubbo:reference id="demoService" interface="com.github.davidji80.dubbo.service.DemoService" loadbalance="leastactive" group="group"/>

多版本

当一个接口实现,出现不兼容升级时,可以用版本号过渡,版本号不同的服务相互间不引用。
可以按照以下的步骤进行版本迁移:

  • 在低压力时间段,先升级一半提供者为新版本
  • 再将所有消费者升级为新版本
  • 然后将剩下的一半提供者升级为新版本
  1. 提供者配置
    <dubbo:service interface="com.github.davidji80.dubbo.service.DemoService"
                   ref="demoService" protocol="dubbo" version="1.0.0"/>
    <dubbo:service interface="com.github.davidji80.dubbo.service.DemoService"
                   ref="demoServiceGroup" protocol="dubbo" version="2.0.0"/>
  1. 消费者配置
    <dubbo:reference id="demoService2" interface="com.github.davidji80.dubbo.service.DemoService"
                     check="false" version="2.0.0"/>

代码

https://github.com/DavidJi80/dubbo
v0.4.3

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值