springBoot与dubbo整合,如何在消费者端配置多注册中心

由于多个provider注册在了两个zookeeper上,之前使用在spring时,使用的是dubbo配置文件,定义了多个registry,通过id可以进行区分。

<dubbo:registry id="test1" protocol="zookeeper" address="${dubbo.address}" />
<dubbo:registry id="test2" protocol="zookeeper" address="${dubbo.address1}" />

<dubbo:reference registry="test1" id="cityDubboService" interface="com.example.demo.CityDubboService" check="false" />

将customer端改为使用springboot框架,使用注解的形式,对provider进行调用。

application.properties配置文件中添加dubbo相关调用信息

spring.dubbo.application.name=consumer
spring.dubbo.application.registries[0].address=zookeeper:#127.0.0.1:2181spring.dubbo.application.registries[0].registry="test1"spring.dubbo.application.registries[1].address=zookeeper:#127.0.0.2:2181spring.dubbo.application.registries[1].registry="test2"spring.dubbo.scan=com.example.demo.controller

在调用时添加注解及参数为

@Reference(registry="test1")
CityDubboService cityDubboService;

无法调取dubbo端对象(注:同样代码,单注册中心调用成功,所以provider端应该没有问题,问题可能出现在consumer端的配置,代码如上)


慕田峪7331174
浏览 4483回答 2
2回答

湖上湖

遇到同样的问题,自己写的registry bean并且指定,但是似乎无效
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java