alibaba / spring-cloud-alibaba

Spring Cloud Alibaba provides a one-stop solution for application development for the distributed solutions of Alibaba middleware.
https://sca.aliyun.com
Apache License 2.0
27.95k stars 8.34k forks source link

No provider available from registry localhost:9090 for service is in Spring Cloud Alibaba 2.2.1.RELEASE #1360

Closed LayJustDoIt closed 3 years ago

LayJustDoIt commented 4 years ago

Which Component nacos 1.2.1, Spring Cloud Alibaba 2.2.1.RELEASE, Spring Cloud Hoxton.SR3, spring-boot 2.2.6

Describe what problem you have encountered
After my repeated tests, after starting the service provider and then starting the service consumer, the service consumer initiated an interface call to get an exception:(No provider available from registry localhost:9090 for service XXXXX use dubbo version 2.7.6, please check status of providers(disabled, not registered or in blacklist).)otherwise there is no problem, All my services are under the same group.

laiweijia commented 4 years ago

I had the same problem 我也遇到了同样的问题

Up from Spring Cloud Alibaba 2.2.0.RELEASE 从2.2.0升上来的

mostcool commented 4 years ago

我也遇到这个问题了,但用 https://github.com/apache/dubbo/issues/5956 这个解决了。

LayJustDoIt commented 4 years ago

我也遇到这个问题了,但用 apache/dubbo#5956 这个解决了。

你用的是Apache Dubbo吧, 我看过你发的那个Solution 但是在Spring Cloud Alibaba中并不起作用, 不知是配置的问题还是Spring Cloud Alibaba新版的bug。

wadezyj commented 4 years ago

我也遇到这个问题了,我的是A服务依赖B,B先启动,A再启动就会报No provider available,然后把consumer.check设置为false,先启动A,再启动B就可以,调用也没问题。退回到2.2.0也不会有这个问题。

LayJustDoIt commented 4 years ago

我也遇到这个问题了,我的是A服务依赖B,B先启动,A再启动就会报No provider available,然后把consumer.check设置为false,先启动A,再启动B就可以,调用也没问题。退回到2.2.0也不会有这个问题。

emmm...... all right.. , consumer.check: false 后按照原顺序启动(先B后A)还是有这问题,治标不治本, 从我目前的使用来看220是没有此问题的。

cnscoo commented 4 years ago

em... 看来是一个普遍的问题,昨天升级到2.2.1.RELEASE之后也是一样的情况,只能暂时退回2.2.0.RELEASE了。

1095071913 commented 4 years ago

em ...看来是一个普遍的问题,昨天升级到2.2.1.RELEASE之后也是一样的情况,只能暂时退回2.2.0.RELEASE了。

2.2.0 也是会出现循序启动问题

1095071913 commented 4 years ago

@mercyblitz

1.目前版本:

Hoxton.SR3 2.2.5.RELEASE 2.2.1.RELEASE 2.2.3 2.问题:启动有循序 dubbo的配置: dubbo: scan: base-packages: com.zhongshi consumer: check: false timeout: 30000 protocol: name: dubbo port: -1 timeout: 30000 retries: 0 registry: //这里采用nacos协议是没有问题的 ,但是springcloud的话就会有循序启动问题 address: spring-cloud://localhost port: 8848 cloud: subscribed-services: "*" application: qos: enable: false 3.详细描述问题 目前有四个服务 分别为 user,sso,order,supplier 调用循序链是这样的 user(首次http请求) > order > sso > supplier order > supplier > user sso > supplier > user > order supplier 没有调用其他rpc user 没有调用其他rpc 开始步骤 首次无规则启动全部服务,调用是没有问题的 , 然后down掉order 再请求,此时请求,调用任何服务都是报没有提供者 ,那么再次down掉supplier , 再次请求 ,也是调用任何服务都是报没有提供者 , 再次启动回order或者supplier ,此时除了down掉的服务无法rpc调用 ,其他都是没有问题的 ,最后启动回最后一个服务 , 再次调用,整条链路都是没有问题的 4. 怀疑点 首先 在dubbo.registry.address=nacos://localhost是没有问题的 但是在dubbo.registry.address=spring-cloud://localhost是有问题的 怀疑在down一个服务的时候 ,把注册表里的信息全部删掉了,而不是指定删除down掉的服务 @mercyblitz 希望大大可以帮助一下
1095071913 commented 4 years ago

希望各位大大帮助一下 个人钉钉 : 18078845921 微信也是钉钉号

superleo-cn commented 4 years ago

@mercyblitz

1.目前版本:

Hoxton.SR3 2.2.5.RELEASE 2.2.1.RELEASE 2.2.3 2.问题:启动有循序 dubbo的配置: dubbo: scan: base-packages: com.zhongshi consumer: check: false timeout: 30000 protocol: name: dubbo port: -1 timeout: 30000 retries: 0 registry: //这里采用nacos协议是没有问题的 ,但是springcloud的话就会有循序启动问题 address: spring-cloud://localhost port: 8848 cloud: subscribed-services: "*" application: qos: enable: false 3.详细描述问题 目前有四个服务 分别为 user,sso,order,supplier 调用循序链是这样的 user(首次http请求) > order > sso > supplier order > supplier > user sso > supplier > user > order supplier 没有调用其他rpc user 没有调用其他rpc 开始步骤 首次无规则启动全部服务,调用是没有问题的 , 然后down掉order 再请求,此时请求,调用任何服务都是报没有提供者 ,那么再次down掉supplier , 再次请求 ,也是调用任何服务都是报没有提供者 , 再次启动回order或者supplier ,此时除了down掉的服务无法rpc调用 ,其他都是没有问题的 ,最后启动回最后一个服务 , 再次调用,整条链路都是没有问题的 1. 怀疑点 首先 在dubbo.registry.address=nacos://localhost是没有问题的 但是在dubbo.registry.address=spring-cloud://localhost是有问题的 怀疑在down一个服务的时候 ,把注册表里的信息全部删掉了,而不是指定删除down掉的服务 @mercyblitz 希望大大可以帮助一下

目前遇到了同样的问题,请问有解决方案吗?

1095071913 commented 4 years ago

@mercyblitz 1.目前版本:

Hoxton.SR3 2.2.5.RELEASE 2.2.1.RELEASE 2.2.3 2.问题:启动有循序 dubbo的配置: dubbo: scan: base-packages: com.zhongshi consumer: check: false timeout: 30000 protocol: name: dubbo port: -1 timeout: 30000 retries: 0 registry: //这里采用nacos协议是没有问题的 ,但是springcloud的话就会有循序启动问题 address: spring-cloud://localhost port: 8848 cloud: subscribed-services: "*" application: qos: enable: false 3.详细描述问题 目前有四个服务 分别为 user,sso,order,supplier 调用循序链是这样的 user(首次http请求) > order > sso > supplier order > supplier > user sso > supplier > user > order supplier 没有调用其他rpc user 没有调用其他rpc 开始步骤 首次无规则启动全部服务,调用是没有问题的 , 然后down掉order 再请求,此时请求,调用任何服务都是报没有提供者 ,那么再次down掉supplier , 再次请求 ,也是调用任何服务都是报没有提供者 , 再次启动回order或者supplier ,此时除了down掉的服务无法rpc调用 ,其他都是没有问题的 ,最后启动回最后一个服务 , 再次调用,整条链路都是没有问题的 1. 怀疑点 首先 在dubbo.registry.address=nacos://localhost是没有问题的 但是在dubbo.registry.address=spring-cloud://localhost是有问题的 怀疑在down一个服务的时候 ,把注册表里的信息全部删掉了,而不是指定删除down掉的服务 @mercyblitz 希望大大可以帮助一下

目前遇到了同样的问题,请问有解决方案吗?

目前没有找到办法

Icecream0211 commented 4 years ago

我也遇到同样的问题,spring-cloud://localhost协议可以很方便的控制服务粒度,但是从来无法正常工作,只能妥协到zookeeper,2.1.2.RELEASE

LayJustDoIt commented 3 years ago

The issue is fixed on Spring Cloud Alibaba 2.2.5.RELEASE

xingyunzz commented 3 years ago

The issue is fixed on Spring Cloud Alibaba 2.2.5.RELEASE ? 不好意思 我用的2.2.5.RELEASE 照样有这个问题

LayJustDoIt commented 3 years ago

Please confirm your configuration is correct. e.g : dubbo.cloud.subscribed-services, If you use nacos, 'dubbo.registry.address' this configuration should be 'nacos://ip:port', These are my suggestions. you can try. good luck :)

lmxdawn commented 3 years ago

请问是必须先启动 dubbo 的服务提供者吗,我这边如果先启动 dubbo 的服务提供者一直有这个问题,如果先启动 dubbo 的提供者后再启动消费者就没问题

LayJustDoIt commented 3 years ago

@lmxdawn 2.2.5这个版本不管先启动哪个都没有问题,我这边儿用的版本是sca2.2.5; sb2.3.3; nacos 141; 从2.2.5这个版本出来我就自测并且上了测试环境;现在一直在生产跑着呢

kokoyuo commented 3 years ago

@lmxdawn 2.2.5这个版本不管先启动哪个都没有问题,我这边儿用的版本是sca2.2.5; sb2.3.3; nacos 141; 从2.2.5这个版本出来我就自测并且上了测试环境;现在一直在生产跑着呢

方便给一下dubbo的配置吗?我这边使用相同的配置还是会有拉不到服务的问题, 或者提供一个联系方式

LayJustDoIt commented 3 years ago

@kokoyuo dubbo: protocol: port: -1 payload: 00000 name: dubbo threads: 100 scan: base-packages: com.test.*.dubbo consumer: timeout: 00000 check: false retries: 2 provider: timeout: 00000 test: version: 1.0.0 cloud: subscribed-services: your-service-name registry: address: nacos://${spring.cloud.nacos.config.server-addr}?namespace=${spring.cloud.nacos.config.namespace} group: ${spring.cloud.nacos.discovery.group}

Eko-lc commented 2 years ago

我也遇到,有弄清楚是怎样解决的吗?

wdkGitHub commented 2 years ago

dubbo.registry.address=zookeeper://127.0.0.1:2181 spring.cloud.zookeeper.connect-string=127.0.0.1:2181

生产消费都增加这个配置 ,重启以后就没有出现问题了

deamonHub commented 2 years ago

dubbo.registry.address=zookeeper://127.0.0.1:2181 可以 spring.cloud.zookeeper.connect-string=127.0.0.1:2181 不行

samky-sq commented 1 year ago

nacos + dubbo的框架中,别人反馈有时调通,有时调不同,看了收集的日志才发现。系统隔几天就会报错:org.apache.dubbo.rpc.RpcException: No provider available from registry。。。。(disabled, not registered or in blacklist)。