这是博主的一个demo,是一个nacos-feign服务,全家桶版本如下:
- cloud版本:2021.0.4
- cloud-alibaba版本:2021.0.4.0
- spring-boot版本:2.6.11
这应该是编写的时候最新的一个全家桶版本
OK 此时你运行毫无问题,但是一旦服务之间调用就会出错,此时错误应该有二种,最笨比的就是当前这种,如果报另一个错误他会告诉你缺了啥。
//简写了反正核心就这几句话
GET [http://a-server/search] root cause;
java.net.UnknownHostException:a-server;
... lookupAllHostAddr...
只要你的错误和我一致首先你要排查字面意思的问题。
1、注册中心已经被注册?
2、@FeignClient()
的服务名是否与yml的spring-application-name
一致
3、启动类是否添加@EnableFeignClients
或另一个
4、单独调用服务可以被调用成功(无需服务之间调用)
此时你就不要在纠结了!!!!!你的问题与我一样!!!
就是高版本换了负载均衡逻辑ribbon,需要添加新的负载均衡loadbalancer。【不敢乱说,但是好像是cloud的Hoxton.SR12以后】此时在父工程的全局jar添加一下
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-loadbalancer</artifactId>
</dependency>
再次启动完美调用完美解决。
标签:feign,调用,服务,解决方案,UnknownHostException,版本,spring,cloud From: https://www.cnblogs.com/musiro/p/17027928.html