赞
踩
错误问题:
报错信息: 连接http://localhost:8761/eureka 的注册中心被拒绝,无法连接
改正后的两个配置文件:
server:
port: 8088
eureka:
instance:
hostname: localhost
client:
register-with-eureka: false
fetch-registry: false
service-url:
defaultZone: http://${eureka.instance.hostname}:${server.port}/eureka/
server:
port: 8082
eureka:
client:
service-url:
defaultZone: http://localhost:8088/eureka/
spring:
application:
name: provider-client
查找原因:主要是配置文件中的 defaultZone原先的写法问题。
原先是
service-url:
default-zone: http://${eureka.instance.hostname}:${server.port}/eureka/
原因:
服务中指定的 http://localhost:8088/eureka 注册中心地址无效,而用了springcloud默认的注册中心地址
改正:
修改服务中的配置文件属性 default-zone为defaultZone
查阅文件:
了解到 8761 是Eureka的默认路径, 服务提供者配置文件中default-zone属性识别不到,Eureka认为启动配置里没有对它的url地址指定时, 会默认寻找这个地址
这里部分源码:
@ConfigurationProperties("eureka.client")
public class EurekaClientConfigBean implements EurekaClientConfig, Ordered {
public static final String PREFIX = "eureka.client";
public static final String DEFAULT_URL = "http://localhost:8761/eureka/";
public static final String DEFAULT_ZONE = "defaultZone";
private static final int MINUTES = 60;
@Autowired(
required = false
)
PropertyResolver propertyResolver;
private boolean enabled = true;
Eureka报错: Connect to localhost:8761 timed out
这边附带一篇文章:从源码角度解释修改的原因
eureka 自定义defaultZone无效问题
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。