4.3.2 心跳状态


4.3.2 心跳状态

每个消费者客户端都只有一个心跳任务,心跳对象(Heartbeat)除了记录心跳任务的元数据-一会话超时时间(timeout)、定时任务时间间隔(interval),还会记录当前心跳任务的状态一一最近的会话重置时间、最近的心跳发送时间、最近的心跳接收时间。相关代码如下:

在这里插入图片描述

timeToNextHeartbeat()方法会计算当前时间到下一次调度的时间间隔,它跟上一次心跳任务的发生时间有关,会用来判断什么时候可以发送下一次心跳:如果返回值为0,表示当前时间减去上一次调度时间的差距大于心跳间隔,需要立即发送下一次心跳;如果大于0,表示当前时间还没到达下一次调度时间,还需要多久才会发生下一次心跳。

如图4-33(上)所示,心跳间隔设置为5秒,上一次心跳的时间是0秒,下一次的心跳时间就是5秒。如果当前时间是2秒,它距离上次心跳时间才过去了2秒,还没到下次心跳的时间,方法返回值为3秒,表示再过3秒才会发生下一次心跳。如果当前时间是4秒,它距离上次心跳时间过去了4秒,也还没到下次心跳的时间,方法的返回值为1秒,表示再过1秒会发生下一次心跳。如图4-33(下)所示,本来应该在5秒发生的心跳因为某种原因没有执行(浅灰色圆圈)。轮询时的当前时间是6秒,距离上次心跳过去了6秒,超过心跳间隔,返回值为0秒,需要马上发生心跳。
在这里插入图片描述

实际上,在计算当前时间和距离上次心跳的时间(ti.meSi.nceLastHeartbeat)时,还会用到上一次会话的重置时间(lastSessi.onReset)。因为如果是客户端第一次启动,上次心跳是没有数据的,只能用上次的会话重置时间。

相关推荐
<p> 课程演示环境:Windows10  </p> <p> 需要学习<span>Ubuntus</span>系统<span>YOLOv4-tiny</span>的同学请前往《<span>YOLOv4-tiny</span>目标检测实战:训练自己的数据集》 <span></span> </p> <p> <span> </span> </p> <p> <span style="color:#E53333;">YOLOv4-tiny</span><span style="color:#E53333;">来了!速度大幅提升!</span><span></span> </p> <p> <span> </span> </p> <p> <span>YOLOv4-tiny</span>在<span>COCO</span>上的性能可达到:<span>40.2% AP50, 371 FPS (GTX 1080 Ti)</span>。相较于<span>YOLOv3-tiny</span>,<span>AP</span>和<span>FPS</span>的性能有巨大提升。并且,<span>YOLOv4-tiny</span>的权重文件只有<span>23MB</span>,适合在移动端、嵌入式设备、边缘计算设备上部署。<span></span> </p> <p> <span> </span> </p> <p> 本课程将手把手地教大家使用<span>labelImg</span>标注和使用<span>YOLOv4-tiny</span>训练自己的数据集。课程实战分为两个项目:单目标检测(足球目标检测)和多目标检测(足球和梅西同时检测)。<span></span> </p> <p> <span> </span> </p> <p> 本课程的<span>YOLOv4-tiny</span>使用<span>AlexAB/darknet</span>,在<span>Windows10</span>系统上做项目演示。包括:<span>YOLOv4-tiny</span>的网络结构、安装<span>YOLOv4-tiny</span>、标注自己的数据集、整理自己的数据集、修改配置文件、训练自己的数据集、测试训练出的网络模型、性能统计<span>(mAP</span>计算<span>)</span>和先验框聚类分析。 <span> </span> </p> <p> <span> </span> </p> <p> 除本课程《<span>Windows</span>版<span>YOLOv4-tiny</span>目标检测实战:训练自己的数据集》外,本人推出了有关<span>YOLOv4</span>目标检测的系列课程。请持续关注该系列的其它视频课程,包括:<span></span> </p> <p> 《<span>Windows</span>版<span>YOLOv4</span>目标检测实战:训练自己的数据集》<span></span> </p> <p> 《<span>Windows</span>版<span>YOLOv4</span>目标检测实战:人脸口罩佩戴识别》<span></span> </p> <p> 《<span>Windows</span>版<span>YOLOv4</span>目标检测实战:中国交通标志识别》<span></span> </p> <p> 《<span>Windows</span>版<span>YOLOv4</span>目标检测:原理与源码解析》<span></span> </p> <p> <span> <img alt="" src="https://img-bss.csdnimg.cn/202007061503586145.jpg" /></span> </p> <p> <span><img alt="" src="https://img-bss.csdnimg.cn/202007061504169339.jpg" /><br /> </span> </p>
©️2020 CSDN 皮肤主题: 酷酷鲨 设计师:CSDN官方博客 返回首页