我先简单说一下我用的是哪个组件和注册中心,以供大家参考。
我的项目是整合的spring cloud框架,我的注册中心是nacos,服务调用者是openfeign。
如果大家用的是eureka + feign 也是可以参考我的解决方式。
首先我先讲讲我在报Load balancer does not have available server for client: EDU-USER 这个异常时我的整个搭建。
- 我的被调用者(即提供者)的pom.xml及application.yml配置文件,是如下
com.alibaba.cloud
spring-cloud-starter-alibaba-nacos-discovery
2.1.0.RELEASE
spring:
application:
name: EDU-USER
datasource:
username: root
password: root
url: jdbc:mysql://127.0.0.1:3306/online_edu?serverTimezone=GMT%2B8&useSSL=false&useUnicode=true&characterEncoding=UTF-8
driver-class-name: com.mysql.jdbc.Driver
jackson:
date-format: yyyy-MM-dd HH:mm:ss
time-zone: GMT+8
cloud:
nacos:
discovery:
server-addr: localhost:8848
server:
port: 8003
- 我的调用者(即消费者)的pom.xml及application.yml配置文件,是如下
org.springframework.cloud
spring-cloud-starter-openfeign
com.alibaba.cloud
spring-cloud-starter-alibaba-nacos-discovery
2.1.0.RELEASE
spring:
application:
name: EDU-STATISTICS
datasource:
username: root
password: root
url: jdbc:mysql://127.0.0.1:3306/online_edu?serverTimezone=GMT%2B8&useSSL=false&useUnicode=true&characterEncoding=UTF-8
driver-class-name: com.mysql.jdbc.Driver
jackson:
date-format: yyyy-MM-dd HH:mm:ss
time-zone: GMT+8
cloud:
nacos:
discovery:
server-addr: localhost:8848
server:
port: 8004
- 我去nacos看我的消费者和提供者的注册情况,如下:
从上图可以看出我的消费者和提供者都是注册成功了的,那为什么依然还说:Load balancer does not have available server for client: EDU-USER(负载平衡器没有客户端的可用服务器:EDU-USER) 呢??
我的解决方案很简单,在你确定你的搭建没有问题时,就是注册中心消费者和提供者都能注册成功说明你的搭建是没错的。那你只需要重新启动你的提供者和消费者即可,但注意,先启动提供者(被调用者),再启动消费者(调用者)。 我就是这样就解决了这个问题的,那这个问题就先说到这里吧。
这只是我遇到这个问题的解决办法,如果没能帮一些小伙伴解决,那不好意思哦,我暂时还没遇到比较复杂的情况。希望小伙伴可以尽快解决bug,这样就能开心玩耍啦~~ 一起努力变成更优秀的程序媛吧~~ 加油!!!



