解决:com.netflix.client.ClientException: Load balancer does not have available server for client: XXX

网友投稿 2603 2022-11-23

解决:com-flix.client.ClientException: Load balancer does not have available server for client: XXX

解决:com-flix.client.ClientException: Load balancer does not have available server for client: XXX

问题背景:两个服务A和B,A使用Feign调用服务B的接口报错,显示B服务不可用,具体如下:

产生以上错误的原因是B服务没有被发现,解决上面的问题可以从3个方面入手排查:

排查一:

首先到注册中心列表查看服务是否存在,是否成功注册:

以上,服务已成功注册,若不存在需要在B服务的pom文件中添加以下依赖:

org.springframework.cloud spring-cloud-starter-eureka

排查二:

在排除第一种情况外,还可能是因为服务启动顺序的原因影响:

服务A和B,A调用B(A->B)。

场景一:先启动了A,再启动了B。但是这时候,怎么都调用不到B。场景二:先启动B,再启动A,这是可以正常调用。然后挂掉B,再重启。之后就怎么也调用不到B了。

如果要排除以上因素需要在B服务的application.properties的文件中添加以下配置

ribbon.eureka.enable=true

排查三:

排除前两种原因,最后就是看下配置文件中定义的 服务名 是否正确了。

以上B服务的配置文件中应用名要和报错的服务名一致。

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:LeetCode1. 两数之和
下一篇:get请求和post请求的区别?分别在哪些情况下使用?从根上理解!
相关文章

 发表评论

暂时没有评论,来抢沙发吧~