1
hcx0 2020-07-17 20:26:08 +08:00
默认最极端情况
定时清理任务 60s 3 个心跳周期 90s 消费端缓存 90s 这玩意儿应该在消费端做容错处理,不应该完全依赖注册中心来发现 |
2
Kyle18Tang 2020-07-17 20:57:44 +08:00
这个要看设置的, 默认的时间有点长...
|
3
jjed0119cs04 2020-07-21 15:35:51 +08:00
正确得做法应该是,服务下线的时候不要 kill -9,让服务关闭之前调用 eureka 的 shutdownHook 。然后 eurekaClient 还有一个本地缓存,还有可能被访问到这个服务,简单的做法是 shutdownhook 调用了之后先不关 docker,延迟 30s 左右再关。
|
4
jjed0119cs04 2020-07-21 16:55:16 +08:00
@jjed0119cs04 很久了,才想起记错了难受,,eureka client 的缓存会被 eureka server 的广播清理的, 会保留的是 eureka 的 ReadOnlyCache,这个是不会主动清理的,方法还是一样,延迟 30s 后再关闭。让这 readyOnly 没被清理的 30s 正好被访问到不会出现服务访问不到的情况。
|
5
cheng6563 OP @jjed0119cs04 以 eureka 是会主动通知 client 的吗
|