Eureka 学习 源码分析08 应用实例过期

Eureka 学习 源码分析08 应用实例过期

2. 为什么需要过期

正常情况下,应用实例下线时候会主动向 Eureka-Server 发起下线请求。但实际情况下,应用实例可能异常崩溃,又或者是网络异常等原因,导致下线请求无法被成功提交。

介于这种情况,通过 Eureka-Client 心跳延长租约,配合 Eureka-Server 清理超时的租约解决上述异常

Eureka 学习 源码分析08 应用实例过期

循环租约leaseMap,然后判断如果如果有过期的,就加入到过期expiredLeases列表中

Eureka 学习 源码分析08 应用实例过期

Eureka 学习 源码分析08 应用实例过期

判断允许执行清理过期租约逻辑,主要和自我保护机制有关

计算最大允许清理租约的数量,后计算允许清理租约的数量