Dubbo 服务嵌套

发布于 2021-11-27 09:36:29 字数 271 浏览 859 评论 7

@jobet 你好,想跟你请教个问题:

场景:

用dubbo部署了2个service,分别为A,B。我要部署第2个服务B,B需要调用服务A。

即B既是一个service provider,同时又是A的consumer。

具体怎么配置。谢谢!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(7

深巷少女 2021-11-30 16:28:41

按照这个配置,服务启动后在dubbo Admin里看到服务上还有警告标识

等你爱我 2021-11-30 16:21:11

可以算是demo吧。

<!-- 生成远程服务代理,可以和本地bean一样使用Service -->

<dubbo:reference id="tccRunService" interface="tf.tcc.service.ITccRunService"  registry="tcc"/>

<dubbo:reference id="tccSsoService" interface="tf.tcc.service.ITccSsoService"  registry="tcc"/>

<!-- 提供方应用信息,用于计算依赖关系 -->

    <dubbo:application name="Mcs"  />

    

<!-- 使用multicast广播注册中心暴露服务地址 -->

    <dubbo:registry address="zookeeper://127.0.0.1:2181"  id="local"/>

    <dubbo:registry address="zookeeper://172.16.32.209:2181"  id="tcc"/>

    <dubbo:registry address="zookeeper://172.16.32.208:2181"  id="gl"/>

    

    <!-- 用dubbo协议在28811端口暴露服务 -->

    <dubbo:protocol name="http" host="127.0.0.1" port="28811" />

    <!-- 定义超时时间 -->

<dubbo:provider timeout="30000" retries="0"/>

<dubbo:service interface="tf.mcs.service.IDataBusService" ref="IDataBusService"  registry="local"/>

<dubbo:service interface="tf.mcs.service.ISystemService" ref="ISystemService"  registry="local"/>

    <dubbo:service interface="tf.brc.release.stub.IEodService" ref="EodService"  registry="local"/>

    <bean id="EodService" class="tf.brc.release.impl.EodServiceImpl" />

    <bean id="IDataBusService" class="tf.mcs.service.DataBusService" />

     <bean id="ISystemService" class="tf.mcs.service.SystemService" />

     <!-- 总账GL -->

    <dubbo:reference id="IGLService" interface="tf.brc.release.stub.IGLService"  registry="gl"/> 

这段配置说明:

1,当前站点引用了172.16.32.209:2181的tccRunService和tccSsoService服务,即作为consumer。

2,当前站点在127.0.0.1:2181发布了IDataBusService、ISystemService、EodService三个服务,即作为provider。

3,当前站点引用了172.16.32.208:2181的IGLService服务,即作为consumer。

旧伤慢歌 2021-11-30 15:45:30

各位可以给一个demo配置吗

绝影如岚 2021-11-30 12:20:23

B中调用A和你的consumer端调用是一样的,也许需要配置注册中心,和接口引用

冷默言语 2021-11-29 18:01:07

不需要代码,有完整的配置demo即可

狠疯拽 2021-11-28 10:56:12

手机回复,没有代码,感觉楼主有点混淆,B引用A就跟其他站点引用A一样,B发布自己的服务也与A发布的形式一样,任何一个站点都可以既是消费者也是提供者,如果涉及的站点比较多,请注意启动顺序。

风透绣罗衣 2021-11-27 10:21:57

可以有在B中的demo配置吗?目前是配置出问题了。报警告:多个不同应用注册了相同服务,请检查***和***中是否有误暴露。

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文