健康检测

健康检测:帮助调用方应用来管理所有服务提供方的连接,并动态维护每个连接的状态,方便服务调用方在每次发起请求的时候都可以拿到一个可用的连接

服务方的状态一般会有三种情况==》

健康状态:建立连接成功,并且心跳探活也一直成功

亚健康状态:建立连接成功,但是心跳请求连续失败

死亡状态:建立连接失败

 

 

当服务调用方通过心跳机制了解了节点的状态之后,每次发请求的时候,就可以优先从健康列表里面选择一个节点。如果健康列表为空,为了提高可用性,也可以尝试从亚健康列表里面选择一个 

一个节点从健康状态过渡到亚健康状态的前提是“连续”心跳失败次数必须到达某一个阈值

可用率==》某一个时间窗口内接口调用成功次数的百分比(成功次数/总调用次数)。当可用率低于某个比例就认为这个节点存在问题,把它挪到亚健康列表,这样既考虑了高低频的调用接口,也兼顾了接口响应时间不同的问题

posted @ 2020-07-17 09:52  LinBupt  阅读(408)  评论(0编辑  收藏  举报