注册中心集群报错,localhost:8761 time out解决

最近在练习Spring-cloud微服务时,遇到一个问题
多模块练习Eureka集群配置时出现了ConnectTimeoutException: Connect to localhost:8761 timed out这样的错误
因为一开始单独启动注册中心时一切正常,而且服务成功运行所以没有太在意
但是当开始做集群时就发现不对了,切到后台日志一看,发现报这个错误:

 Caused by: org.apache.http.conn.ConnectTimeoutException: Connect to localhost:8761 timed out
    	at org.apache.http.conn.scheme.PlainSocketFactory.connectSocket(PlainSocketFactory.java:123) ~[httpclient-4.5.9.jar:4.5.9]
    	at org.apache.http.impl.conn.DefaultClientConnectionOperator.openConnection(DefaultClientConnectionOperator.java:180) ~[httpclient-4.5.9.jar:4.5.9]
    	at org.apache.http.impl.conn.AbstractPoolEntry.open(AbstractPoolEntry.java:144) ~[httpclient-4.5.9.jar:4.5.9]
    	at org.apache.http.impl.conn.AbstractPooledConnAdapter.open(AbstractPooledConnAdapter.java:134) ~[httpclient-4.5.9.jar:4.5.9]
    	at org.apache.http.impl.client.DefaultRequestDirector.tryConnect(DefaultRequestDirector.java:605) ~[httpclient-4.5.9.jar:4.5.9]
    	at org.apache.http.impl.client.DefaultRequestDirector.execute(DefaultRequestDirector.java:440) ~[httpclient-4.5.9.jar:4.5.9]
    	at org.apache.http.impl.client.AbstractHttpClient.doExecute(AbstractHttpClient.java:835) ~[httpclient-4.5.9.jar:4.5.9]
    	at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:118) ~[httpclient-4.5.9.jar:4.5.9]
    	at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:56) ~[httpclient-4.5.9.jar:4.5.9]
    	at com.sun.jersey.client.apache4.ApacheHttpClient4Handler.handle(ApacheHttpClient4Handler.java:173) ~[jersey-apache-client4-1.19.1.jar:1.19.1]
    	... 10 common frames omitted

当时我就一脸蒙蔽。。这啥啊,怎么会报的访问的8761这个端口出错呢,我没有访问这个端口啊。后来经过度娘谷哥,发现这个端口是Eureka默认的注册中心端口号,在EurekaClientConfigBean里会在构造方法中设置默认值

@ConfigurationProperties("eureka.client")
public class EurekaClientConfigBean implements EurekaClientConfig {
    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;
   
    public EurekaClientConfigBean() {
        this.serviceUrl.put("defaultZone", "http://localhost:8761/eureka/");
        this.gZipContent = true;
      ...
    }
}

难道我没配默认访问路径?额,赶紧去yml里面瞧一瞧,这不是配了么

server:
  port: 1000
eureka:
  instance:
    hostname: test1000
  client:
      registerWithEureka: false 
      fetchRegistry: false 
	serviceUrl:
      defaultZone: http://test1001:1001/eureka/
spring:
  application:
    name: eureka-server

百思不得其解,百般折腾之下,终于祭出大招,推倒重写
居然就好了!好了!!
然后两边代码一对比,噗~~~~~~~~~ 气的吐血
yml配置里不知道为啥缩进有一小格差距
正确的配置:

server:
  port: 1000
eureka:
  instance:
    hostname: test1000
  client:
      registerWithEureka: false 
      fetchRegistry: false 
	  serviceUrl:
        defaultZone: http://test1001:1001/eureka/
spring:
  application:
    name: eureka-server

以此铭记这次坑逼的错误以及陪我熬夜排错消耗的脑细胞们

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值