问题描述:
我报的错就是上图所示,我的提供者和消费者服务都已经注册到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中添加依赖
然后依旧RestTemplate上方加@LoadBalanced注解,就可以了。
精彩链接
发表评论