重启eureka服务器后,客户端无法向eureka服务器重新注册

时间:2018-10-11 10:45:31

标签: spring-boot spring-cloud netflix-eureka heartbeat

问题总是在我们的测试环境中发生,但一次只能在本地无法重现。

以下错误:

  

2018-10-11 10:45:57,198 [DiscoveryClient-HeartbeatExecutor-0]错误c.n.d.s.t.d.RedirectingEurekaHttpClient-请求执行错误   com.sun.jersey.api.client.ClientHandlerException:找不到Java类com.netflix.appinfo.InstanceInfo和Java类型类com.netflix.appinfo.InstanceInfo和MIME媒体类型text / html的消息正文阅读器   在com.sun.jersey.api.client.ClientResponse.getEntity(ClientResponse.java:630)   在com.sun.jersey.api.client.ClientResponse.getEntity(ClientResponse.java:586)   在com.netflix.discovery.shared.transport.jersey.AbstractJerseyEurekaHttpClient.sendHeartBeat(AbstractJerseyEurekaHttpClient.java:105)   在com.netflix.discovery.shared.transport.decorator.EurekaHttpClientDecorator $ 3.execute(EurekaHttpClientDecorator.java:92)   在com.netflix.discovery.shared.transport.decorator.MetricsCollectingEurekaHttpClient.execute(MetricsCollectingEurekaHttpClient.java:73)   在com.netflix.discovery.shared.transport.decorator.EurekaHttpClientDecorator.sendHeartBeat(EurekaHttpClientDecorator.java:89)   在com.netflix.discovery.shared.transport.decorator.EurekaHttpClientDecorator $ 3.execute(EurekaHttpClientDecorator.java:92)   在com.netflix.discovery.shared.transport.decorator.RedirectingEurekaHttpClient.executeOnNewServer(RedirectingEurekaHttpClient.java:118)   在com.netflix.discovery.shared.transport.decorator.RedirectingEurekaHttpClient.execute(RedirectingEurekaHttpClient.java:79)   在com.netflix.discovery.shared.transport.decorator.EurekaHttpClientDecorator.sendHeartBeat(EurekaHttpClientDecorator.java:89)   在com.netflix.discovery.shared.transport.decorator.EurekaHttpClientDecorator $ 3.execute(EurekaHttpClientDecorator.java:92)   在com.netflix.discovery.shared.transport.decorator.RetryableEurekaHttpClient.execute(RetryableEurekaHttpClient.java:119)   在com.netflix.discovery.shared.transport.decorator.EurekaHttpClientDecorator.sendHeartBeat(EurekaHttpClientDecorator.java:89)   在com.netflix.discovery.shared.transport.decorator.EurekaHttpClientDecorator $ 3.execute(EurekaHttpClientDecorator.java:92)   在com.netflix.discovery.shared.transport.decorator.SessionedEurekaHttpClient.execute(SessionedEurekaHttpClient.java:77)   在com.netflix.discovery.shared.transport.decorator.EurekaHttpClientDecorator.sendHeartBeat(EurekaHttpClientDecorator.java:89)   在com.netflix.discovery.DiscoveryClient.renew(DiscoveryClient.java:824)   在com.netflix.discovery.DiscoveryClient $ HeartbeatThread.run(DiscoveryClient.java:1393)   在java.util.concurrent.Executors $ RunnableAdapter.call(Executors.java:511)   在java.util.concurrent.FutureTask.run(FutureTask.java:266)   在java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)   在java.util.concurrent.ThreadPoolExecutor $ Worker.run(ThreadPoolExecutor.java:617)   在java.lang.Thread.run(Thread.java:745)   2018-10-11 10:45:57,199 [DiscoveryClient-HeartbeatExecutor-0] WARN cndstdRetryableEurekaHttpClient-请求执行失败并显示消息:Java类com.netflix.appinfo.InstanceInfo和Java类型类com.netflix的消息正文阅读器。 appinfo.InstanceInfo和MIME媒体类型text / html找不到   2018-10-11 10:45:57,199 [DiscoveryClient-HeartbeatExecutor-0]错误c.n.d.DiscoveryClient-DiscoveryClient_OSM-ADMIN / 10.132.81.36:osm-admin:8082-无法发送心跳!   com.netflix.discovery.shared.transport.TransportException:无法在任何已知服务器上执行请求   在com.netflix.discovery.shared.transport.decorator.RetryableEurekaHttpClient.execute(RetryableEurekaHttpClient.java:111)   在com.netflix.discovery.shared.transport.decorator.EurekaHttpClientDecorator.sendHeartBeat(EurekaHttpClientDecorator.java:89)   在com.netflix.discovery.shared.transport.decorator.EurekaHttpClientDecorator $ 3.execute(EurekaHttpClientDecorator.java:92)   在com.netflix.discovery.shared.transport.decorator.SessionedEurekaHttpClient.execute(SessionedEurekaHttpClient.java:77)   在com.netflix.discovery.shared.transport.decorator.EurekaHttpClientDecorator.sendHeartBeat(EurekaHttpClientDecorator.java:89)   在com.netflix.discovery.DiscoveryClient.renew(DiscoveryClient.java:824)   在com.netflix.discovery.DiscoveryClient $ HeartbeatThread.run(DiscoveryClient.java:1393)   在java.util.concurrent.Executors $ RunnableAdapter.call(Executors.java:511)   在java.util.concurrent.FutureTask.run(FutureTask.java:266)   在java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)   在java.util.concurrent.ThreadPoolExecutor $ Worker.run(ThreadPoolExecutor.java:617)   在java.lang.Thread.run(Thread.java:745)

我也看到了https://github.com/Netflix/eureka/issues/914的答案 但这对我不起作用。

在我的本地计算机上,当我停止本地的eureka服务器时,客户端将抛出“连接被拒绝”,这是正确的行为。下面的错误:

  

2018-10-10 17:54:26,693 [DiscoveryClient-HeartbeatExecutor-0]错误c.n.d.s.t.d.RedirectingEurekaHttpClient-请求执行错误   com.sun.jersey.api.client.ClientHandlerException:java.net.ConnectException:拒绝连接:connect

但是,当我在测试环境中与以前的操作相同时,客户端会抛出如下错误:

  

[DiscoveryClient-HeartbeatExecutor-0] WARN cndstdRetryableEurekaHttpClient-请求执行失败,并显示以下消息:Java类com.netflix.appinfo.InstanceInfo和Java类型类com.netflix.appinfo.InstanceInfo和MIME媒体的消息正文阅读器找不到text / html类型   2018-10-11 14:30:14,194 [DiscoveryClient-HeartbeatExecutor-0]错误c.n.d.DiscoveryClient-DiscoveryClient_OSM-ADMIN / 10.132.81.36:osm-admin:8082-无法发送心跳!   com.netflix.discovery.shared.transport.TransportException:无法在任何已知服务器上执行请求

我的spring-boot版本是1.5.10.RELEASE,而org.springframework.cloud版本是1.4.4.RELEASE

0 个答案:

没有答案
相关问题