(基本上是两个Eureka服务器和三个Eureka客户端微服务)
我要删除以下消息:
紧急!如果不是,EUREKA可能会不正确地提出索赔要求。更新的门槛比以往任何时候都要小,因此,仅仅为了安全起见,实例就不会过期。
Eureka Server1:
public class events1
{
public int Id { get; set; }
public string title { get; set; }
public string report { get; set; }
public string image1 { get; set; }
public string image2 { get; set; }
//the new added line//
public HttpPostedFileBase ImageFile { get; set; }
}
Eureka Server2:
spring.application.name=ms-service-discovery-1
server.port=8761
eureka.client.register-with-eureka=false
eureka.client.fetch-registry=false
eureka.server.enableSelfPreservation= true
eureka.instance.leaseRenewalIntervalInSeconds=1
eviction-interval-timer-in-ms: 1000
eureka.server.wait-time-in-ms-when-sync-empty: 1000
eureka.server.responseCacheUpdateIntervalMs: 1000
答案 0 :(得分:0)
这是由于Eureka的自我保存模式所致。如果心跳续订次数低于预期阈值,则Eureka服务器将停止逐出所有实例。您的Eureka服务器中的警告表明发生了这种情况。
请尝试调整以下属性。默认值是85%。首先,只需降低下面的属性,例如0.50
eureka.renewalPercentThreshold=0.85
或者,您可以使用以下属性禁用自我保存模式。
eureka.enableSelfPreservation=false
注意 基本上,所有Eureka客户端都会在关闭时自行注销。如果成功注销自己,则不会发生上述问题。
不幸的是,有时基于Spring Cloud的Eureka客户端在关闭时不会注销自己,并且症状因Spring Cloud版本而异。在大多数情况下,Dalston和Edgware版本会很好地取消注册。但是Finchley发行版现在似乎并未注销。
此外,您开始在Eureka环境中运行许多实例,上述消息将消失,因为仅一个或两个实例关闭就不会达到阈值。
您可以找到有关自我保存模式here
的更多信息