SpringCloud中注册Eureka报错
报错主要信息:
Request execution error. endpoint=DefaultEndpoint{ serviceUrl=’http://localhost:8761/eureka/}
com.sun.jersey.api.client.ClientHandlerException: java.net.ConnectException: Connection refused: connect
Caused by: java.net.ConnectException: Connection refused: connect
报错原因:
程序中指定的 http://localhost:8088/eureka 注册中心地址无效,而用了springcloud默认的注册中心地址–http://localhost:8761/eureka
报错解决:
服务提供者配置文件中defaultZone属性识别不到
配置文件中的default-zone或者defaultzone等修改为defaultZone
在配置中格式没对齐也要排查,这也是报错的点
下面是本人的配置:
eureka配置:
server: port: 8088 # 端口 spring: application: name: eurekaserverdemo # 应用名称,会在Eureka中显示 eureka: client: register-with-eureka: false # 是否注册自己的信息到EurekaServer,默认是true fetch-registry: false # 是否拉取其它服务的信息,默认是true service-url: # EurekaServer的地址,现在是自己的地址,如果是集群,需要加上其它Server的地址。 defaultZone: http://127.0.0.1:8088/eureka
服务提供者配置:
server: port: 8081 spring: application: name: userservice # 应用名称,会在Eureka中显示 mybatis: type-aliases-package: com.geek.pojo eureka: client: service-url: defaultzone: http://127.0.0.1:8088/eureka instance: prefer-ip-address: true # 当调用getHostname获取实例的hostname时,返回ip而不是host名称 ip-address: 127.0.0.1 # 指定自己的ip信息,不指定的话会自己寻找
服务消费者配置:
server: port: 8080 spring: application: name: userconsumer eureka: client: service-url: defaultZone: http://127.0.0.1:8088/eureka instance: prefer-ip-address: true # 当其它服务获取地址时提供ip而不是hostname ip-address: 127.0.0.1 # 指定自己的ip信息,不指定的话会自己寻找