com.netflix.client.ClientException: Load balancer does not have available server for client xxxx

版本

spring boot: 2.0.1.RELEASE

spring cloud: Finchley.M9

错误

通过zuul调用eureka注册的服务,错误内容如下

Caused by: com.netflix.client.ClientException: Load balancer does not have available server for client xxxxx

方案

经过查询排查,两种解决方案

方案一(亲测有效)

在application.properties中添加

ribbon.eureka.enable: true

方案二

  添加依赖(有待测试)

  1. <dependency>
  2. <groupId>org.springframework.cloud</groupId>
  3. <artifactId>spring-cloud-starter-eureka</artifactId>
  4. </dependency>

方案因为版本问题,没有测试,仅供参考

方案三(留作使用)

解决方法:serviceprovider这个application.name可能是太长了,改短一些就行了,我直接改成了sp(长的字符串可以使用中划线-分割),经测试可以正常调用,springcloud关于这些错误的提示内容实在太少了,翻阅英文资料也没找到,在此谢谢Spring Cloud中国社区②:530321604里大佬们的帮助

原文地址:https://www.cnblogs.com/jpfss/p/10769002.html