dubbo启动消费者找不到服务端com.alibaba.dubbo.rpc.RpcException: No provider available from registry ip:2181 for

Posted companion

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了dubbo启动消费者找不到服务端com.alibaba.dubbo.rpc.RpcException: No provider available from registry ip:2181 for 相关的知识,希望对你有一定的参考价值。

最近在接触dubbo,dubbo启动的时候作为消费端一直找不到服务,找了一天:说下环境

1.springboot集成dubbo采用的注解式

2.服务端是普通的ssm项目集成dubbo的配置式

猜想;

1.两端采用的必须一致--这个应该不用

2.dubbo版本的问题--服务端用的是2.5.4,我们消费端集成dubbo-spring-boot-start采用的是2.0,里面的dubbo采用的是2.6.0版本,修改成服务端对应的版本启动一直报错DubboLog类找不到: 这个问题确实存在dubbo-2.6.1版本中存在该类但是2.5.4版本不存在,经过猜想可能是spring-boot版本过高或者spring-boot启动本身就需要DubboLog类;后改回版本

3.由于最早就存在消费端找到服务端的情况,排除服务端原因;

4.后改为配置版本发现配置的服务接口的路径不一致,这是因为服务端曾经提供过两个jar包,包名是一致的,所以直接覆盖了,后经过发现UserService的路径有更改,与删除掉的提供的第一个版本路径不一致,也就是消费者使用的服务根本就不是服务端注册的服务,故导致找了很久问题所在

总结:

当dubbo调用消费者找不到服务的时候一定不要忘记排查真正的服务端服务类;

当然除此之外还有因素的影响,比如网络影响,公网和内网的影响之类的,可以多搜索相关信息,不再赘述,仅说明自己问题所在。

以上是关于dubbo启动消费者找不到服务端com.alibaba.dubbo.rpc.RpcException: No provider available from registry ip:2181 for 的主要内容,如果未能解决你的问题,请参考以下文章

Dubbo3高级特性「系统级别检查」服务端和消费端启动时检查

Dubbo入门以及总结

dubbo消费者和提供者 包名必须一样么

Dubbo 出门遇到情敌

dubbo源码学习:暴露服务的过程

Dubbo学习 —— SpringBoot 整合Dubbo