nacos2.2.3和springcloudalibaba2022 IO error on GET request for httpuser-serviceuser1 user-service

我的spring cloud版本为2022.0.0、springcloud alibaba版本2022.0.0.0使用原生的RestTemplate调用已经在nacos注册中心显示的服务就抛出

nacos I/O error on GET request for "http://user-service/user/1": user-service

最终发现是负载均衡错了,解决方法如下

修改依赖


<dependency>
    <groupId>com.alibaba.cloudgroupId>
    <artifactId>spring-cloud-starter-alibaba-nacos-discoveryartifactId>
    <exclusions>
        
        <exclusion>
            <groupId>org.springframework.cloudgroupId>
            <artifactId>spring-cloud-starter-netflix-ribbonartifactId>
        exclusion>
    exclusions>
dependency>

<dependency>
    <groupId>org.springframework.cloudgroupId>
    <artifactId>spring-cloud-loadbalancerartifactId>
dependency>

修改RestTemplate

@Bean
@LoadBalanced   //负载均衡
public RestTemplate restTemplate(RestTemplateBuilder builder) {
    return builder.build();
}

然后就可以使用服务名代替ip来发送请求

你可能感兴趣的:(微服务,spring,cloud,nacos,微服务,服务发现)