本文主要是介绍dubbo之 消费者用api方式注册消费者,服务者用xml方式注册服务,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
场景:
我遇到的需求是:需要 服务端用xml的方式配置服务者,而消费端用api的方式配置消费者,
而官方文档只有如下三种方式,而我这种算是xml+api的方式吧(混合模式?)
dubbo的实现方式有三种:
1、spirng的xml配置文件(官方文档有)
2、通过dubbo的api方式(官方文档不详细)
3、通过注解的方式。
于是不知道能不能这样搞啊,但逻辑肯定没问题嘛,因为 前后端分离的逻辑。
坑:group的使用问题:
实现了xml配置的服务者,也实现了api的消费者,但是消费者调用时,会报错:找不到提供者。
最终通过demo发现,服务者不写group属性,
即,服务注册中心登记的服务是:接口名
如果设置了group属性,则 服务注册中心登记的服务是:组名/接口名,即
所以消费者(如果没有设置group属性的话)去服务注册中心回去找GreetingService(即 接口名),不会找 q1/GreetingService的服务,于是就会说 找不到提供者。
问题排查:
由于所在公司项目,不能连外网不能传文件,所以不能用自带的监控中心。于是自己新建了几个dubbo的demo,进行测试,在 服务注册监控中心发现了服务名的问题。
解决方法:
在消费者的 中设置group属性,如下
这篇关于dubbo之 消费者用api方式注册消费者,服务者用xml方式注册服务的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!