问题描述:

 我报的错就是上图所示,我的提供者和消费者服务都已经注册到nacos,将服务者RestTemplate访问的url也使用服务名替代了,结果调用的时候就报错java.net.UnknownHostException: XXX。

SpringCloud我的版本是2021.0.2,springboot对应的版本是2.6.7,nacos使用的是2.0.1。好像SpringCloud2020.0.1.0之后版本不使用netflix了,所以我们不用Ribbon来实现负载均衡。

我查了好多,都说是没有加负载均衡,然而在我的启动类中早就加了

@MapperScan("cn.itcast.order.mapper")

@SpringBootApplication

public class OrderServiceApplication {

public static void main(String[] args) {

SpringApplication.run(OrderServiceApplication.class, args);

}

@Bean

@LoadBalanced

public RestTemplate restTemplate(){

return new RestTemplate();

}

}

在RestTemplate上方加@LoadBalanced注解,仍然报错。

最后终于找到了解决方法。在pom中添加依赖

org.springframework.cloud

spring-cloud-starter-loadbalancer

然后依旧RestTemplate上方加@LoadBalanced注解,就可以了。

精彩链接

评论可见,请评论后查看内容,谢谢!!!
 您阅读本篇文章共花了: