我有一个本地eureka服务器和一个客户端
尤里卡:
server:
port: 1111
eureka:
instance:
prefer-ip-address: true
client:
registerWithEureka: false
fetchRegistry: false
serviceUrl:
defaultZone: http://127.0.0.1:1111/eureka/
server:
waitTimeInMsWhenSyncEmpty: 0
客户:
eureka:
instance:
prefer-ip-address: true
client:
serviceUrl:
defaultZone: http://127.0.0.1:1111/eureka/
我有两个问题:
1)Eureka服务器抛出日志:
NullPointerException:at com.netflix.eureka.resources.StatusResource.isReplicaAvailable
2)客户端与Eureka连接,但过了一段时间我在他的日志中看到了下一个:
RedirectingEurekaHttpClient:请求执行错误javax.ws.rs.WebApplicationException:null com.netflix.discovery.provider.DiscoveryJerseyProvider.readFrom(DiscoveryJerseyProvider.java:110)RetryableEurekaHttpClient:请求执行失败DiscoveryClient:DiscoveryClient_MW / 192.168.0.100:client:8080 - 无法发送心跳! com.netflix.discovery.shared.transport.TransportException:无法在任何已知服务器上执行请求
在日志Eureka我看到:
InstanceRegistry:DS:注册表:租约不存在,注册资源:CLIENT - 192.168.0.100:client:8080 InstanceResource:Not Found(续订):CLIENT - 192.168.0.100:client:8080
在Eureka Web控制台中,客户端具有UP状态,但也有一个很大的铭文:
更新比阈值更重要 . 自保护模式已关闭 . 在网络/其他问题的情况下,可能无法保护实例过期
虽然连接正常,但我可以通过Eureka链接到我的客户端 .
你能解释它的含义以及如何摆脱它吗?
1 回答
在客户端设置YML时,你应该在“defaultZone”之前添加空格,如下所示:
否则defaultZone与serviceUrl处于同一级别 . 谢谢