1.首先,如何在linux环境下查询provider(其中包名就是服务的全路径名)
进入zk ls /dubbo/包名/providers
2.我在项目中碰到一个问题,就是我在hhs项目中写了一个模块叫hhs-sdk,这个模块专门为其他项目提供过滤器功能,筛选符合条件的请求,但是在其他项目引入我的项目后,总是报这个问题
Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'xxrizionService': factorybean threw exception on object creation; nested exception is java.lang.IllegalStateException: No registry config found or it's not a valid config! The registry config is: <dubbo:registry valid="false" zookeeperProtocol="false" id="hxxRegistry" prefix="dubbo.registries." />
3.dubbo生产者和消费者
参考:https://www.cnblogs.com/luoxueyi/p/6845586.html
dubbo生产者需要写registry,也就是这个
<dubbo:registry address="${dubbo.registry.address}" />
而dubbo消费者也需要写registry,也就是上面这个
而registry的id也就是这个registry的名字,通过id可以找到这个registry的配置,所以我们可以给registry添加id,通过使用id方便查找服务。
但是并不是生产者和消费者的registry的id一定要相同,只要在各自的配置中找到自己写的registry id就可以。但是关键的是各自的registry id的address要一致。
下面贴出hhs-sdk的代码