You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Eureka服务发现异常:WebClient无法解析服务名致连接拒绝

问题分析与解决方案

核心问题

你的order-service没有配置Eureka客户端的服务发现地址,导致它无法从Eureka Server获取inventory-service的实例信息,没法通过服务名解析出实际网络地址,因此触发连接拒绝错误。

修复步骤

  1. 给order-service添加Eureka客户端依赖
    Maven项目在pom.xml中添加:

    <dependency>
        <groupId>org.springframework.cloud</groupId>
        <artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
    </dependency>
    

    Gradle项目在build.gradle中添加:

    implementation 'org.springframework.cloud:spring-cloud-starter-netflix-eureka-client'
    
  2. 完善order-service的配置文件
    在application.properties中添加Eureka服务地址:

    eureka.client.service-url.defaultZone = http://localhost:8761/eureka
    

    (注:register-with-eureka和fetch-registry默认都是true,无需额外配置,若有特殊需求可显式调整)

  3. 优化WebClient的使用方式
    你当前的@LoadBalanced注解配置是正确的,但建议直接注入构建好的WebClient实例,避免重复创建:

    @Configuration
    public class WebClientConfig {
        @Bean
        @LoadBalanced
        public WebClient webClient() {
            return WebClient.builder().build();
        }
    }
    

    业务类中注入使用:

    private final WebClient webClient;
    
    public OrderService(WebClient webClient) {
        this.webClient = webClient;
    }
    
    // 调用逻辑
    InventoryResponse[] inventoryResponses = webClient.get()
            .uri("http://inventory-service/api/inventory", uriBuilder -> uriBuilder.queryParam("skuCode", skuCodes).build())
            .retrieve()
            .bodyToMono(InventoryResponse[].class)
            .block();
    

关于@EnableEurekaClient与EurekaClient的说明

  • 新版Spring Cloud(2020.0.0及以后)不需要添加@EnableEurekaClient或@EnableDiscoveryClient注解,只要引入Eureka客户端依赖,Spring Boot会自动启用服务注册与发现功能。
  • 旧版本需要@EnableEurekaClient激活客户端,但现在已被自动配置替代。
  • 直接使用EurekaClient接口手动获取实例是旧方案,现在推荐通过带负载均衡的WebClient/RestTemplate,用服务名直接调用,这是Spring Cloud的标准最佳实践。

额外检查项

  • 访问http://localhost:8761,确认inventory-service已成功注册到Eureka Server。
  • 检查inventory-service的随机端口是否被Eureka正确识别。
  • 确保两个微服务之间网络通畅,无防火墙或端口占用问题。

内容的提问来源于stack exchange,提问作者Johnyb

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.08 11:00:15