解决java.lang.RuntimeException: com.netflix.client.ClientException: Load balancer does not have availa

解决java.lang.RuntimeException: com.netflix.client.ClientException: Load balancer does not have available server for client: xxx-xxx-xxx

小弟第一次发博客,不喜勿喷,工作经验(1个月)

各位大佬你们,最近在接触微服务项目,在运行的过程中遇到许多问题,第一次写博客,就发一个比较简单的,有什么写错的地方望大佬们指点一下,好及时更改

直接上图
解决java.lang.RuntimeException: com.netflix.client.ClientException: Load balancer does not have availa_第1张图片从报错中能够很明显的看到,我这里显示的是does not have — user,我的user服务是处于关闭状态,在微服务中,主要采用的就是服务与服务之间的调用(小弟个人理解),就相当于是提供者与消费者之间的关系,在这里我的user服务担任的是提供者,正在运行的服务相当于是消费者,说庸俗一点就是我消费这过来消费,钱都给你(提供者)准备好了,但是你(提供者)不开门,我消费者很生气,这个时候我们可以检查一下user服务,是不是处于打开状态(我这里目前是关闭状态)

解决java.lang.RuntimeException: com.netflix.client.ClientException: Load balancer does not have availa_第2张图片
这个时候我把user服务启动起来,启动成功了,然后在重新启动我的消费者服务,因为提供者(user)已经启动了。在执行方法,也就是调用user的接口
解决java.lang.RuntimeException: com.netflix.client.ClientException: Load balancer does not have availa_第3张图片
问题已经解决。

强调一下,这里有一个大坑,需要注意,那就是user(提供者)服务在启动之后,一定一定一定要重新启动消费者服务,因为在这里如果你不重新启动消费者服务,那么你在运行之后,还是一样会报错,并且是同样的报错,因为消费者依然无法检测到提供者,需要重启消费者服务(依照我个人理解,应该是有方法能够自动监听服务的,意思也就是在user服务启动之后,消费者服务能够直接读取到user服务,也就是我们不用重新启动消费者服务,就像是Tomcat热部署,不知道理解的对不对)
第一次的文章就到这里

觉得能有帮助或者错误(小弟写的)不是严重的情况下,希望点上宝贵的一赞,给咋们菜鸡一点信心,谢谢指点

你可能感兴趣的:(解决java.lang.RuntimeException: com.netflix.client.ClientException: Load balancer does not have availa)