使用OpenFeign调用服务报错503[Load balancer does not contain an instance for the service ...]
Caused by: feign.FeignException$ServiceUnavailable: [503] during [GET] to [http://sundial-user-provider/user/getByLoginName/%E6%98%8E] [IUserFacede#getByLoginName(String)]: [Load balancer does not con
·
前言
SpringBoot:2.4.2
SpringCloud:2020.0.4
SpringCloudAlibaba、Nacos:2021.1
SpringCloudLoadbalancer:3.1.3
SpringCloudOpenFeign:3.0.4
说明
使用nacos做配置中心,配置了服务提供者(sundial-user-provider,以下简称user),和服务消费者(sundial-security-provider,以下简称security),在测试security登录接口调用user接口时,出现了以下错误,意思是负载均衡器找不到服务实例,没找到服务
Caused by: feign.FeignException$ServiceUnavailable: [503] during [GET] to [http://sundial-user-provider/user/getByLoginName/%E6%98%8E] [IUserFacede#getByLoginName(String)]: [Load balancer does not contain an instance for the service sundial-user-provider]
1、我排查了Naocs中的spring.application.name的值配置
2、排查了@FeignClient注解value的值配置
@FeignClient(value = "sundial-user-provider",path = "/user")
发现只是 sundial-user-provider 的大小写不一样。而我在使用Eureka的时候,大小写不一致并不会妨碍服务间的调用,因此就没管,直到实在排不出来是哪里有问题的时候才持着怀疑的态度将naocs中spring.application.name的值改为了小写,重启了user服务后再次调用,发现调用成功
注意:security服务和user服务需要建立在共同的命名空间和分组中
更多推荐
已为社区贡献1条内容
所有评论(0)