[发明专利]一种心跳模块自检测方法有效
申请号: | 201310028990.5 | 申请日: | 2013-01-25 |
公开(公告)号: | CN103067209B | 公开(公告)日: | 2017-09-15 |
发明(设计)人: | 王佳 | 申请(专利权)人: | 浪潮电子信息产业股份有限公司 |
主分类号: | H04L12/24 | 分类号: | H04L12/24;H04L12/26 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 250014 山东*** | 国省代码: | 山东;37 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 心跳 模块 检测 方法 | ||
技术领域
本发明涉及高可用集群系统中多节点消息通信的方法,具体的说是一种心跳模块自检测方法。
背景技术
高可用集群系统是指能够保证业务24小时不中断,在系统发生问题或者应用软件发生问题时,能够快速恢复业务,尽可能将宕机时间控制在分钟级别的系统。高可用集群系统由下至上主要包括以下几个模块:心跳模块、资源监控模块、资源管理模块、分布式控制台模块和web服务模块。
其中,心跳模块负责多节点的信息传输,是整个系统的核心,是信息交换的枢纽。该模块的可靠性和稳定性直接影响整个系统的实时效应,即实时提供业务状态并及时进行业务预警。面对多节点多媒介的信息传输,要求可进行多播和广播、传输速率快、信息量大且不遗漏、资源开销少。心跳模块一般采用glib库中main event loop轮询机制进行消息发送,以及节点和媒介的状态检测。但由于该机制复杂度高,封装性强,调用时程序中的某个错误可能使得该轮询在某个运行点失效,从而导致心跳模块无法正常工作,甚至使高可用集群系统瘫痪。同时高可用集群系统要求保证业务7×24小时不间断运行,对可靠性,稳定性要求极高,一旦出现轮询失效,对企业将是巨大的损失。
发明内容
本发明的技术任务是解决现有技术的不足,提供一种心跳模块自检测方法。
本发明的技术方案是按以下方式实现的,该一种心跳模块自检测方法,其具体检测步骤包括:
发送心跳流程:发送心跳流程以心跳时间间隔为频率定时发送;
检测心跳超时流程:用于检查某个节点或某个心跳媒介是否出现故障,进行业务报警;
所述检测心跳超时流程的执行频率大于发送心跳流程的执行频率,且这两个流程对两个轮询进行互检,当某个轮询出现异常时,将重新启动该轮询,并更新下一次异常检测时间,所述两个流程应用于高可用集群中。
所述发送心跳流程的详细步骤为:
步骤1、获取系统自开机以来的当前时间;
步骤2、检测心跳超时检测流程是否正常,若正常则进入步骤6,若不正常则进入步骤3;
步骤3、移除心跳超时检测轮询;
步骤4、重新根据心跳超时检测时间间隔添加新的超时检测轮询;
步骤5、更新超时检测时间;
步骤6、更新心跳发送时间;
步骤7、创建心跳信息并放到发送队列里等待发送。
所述步骤2的检测心跳超时检测流程为:通过比较心跳超时时间与步骤1测量的当前时间差值来确定心跳超时检测轮询是否异常,如果差值为正数,则表示正常,反之异常。
所述步骤5的详细过程为:超时检测时间更新为当前时间与超时检测时间间隔×4之和,表明再经过更新后的超时检测时间进行超时检测轮询的异常检测。
所述步骤6的详细过程为:心跳发送时间更新为当前时间与心跳发送时间间隔×2之和,表明再经过更新后的心跳发送时间进行心跳发送轮询的异常检测。
所述检测心跳超时流程的详细步骤为:
步骤1:获取系统自开机以来的当前时间;
步骤2、检测心跳发送检测流程是否正常,若正常则进入步骤6,若不正常则进入步骤3;
步骤3、移除心跳发送轮询;
步骤4、重新根据心跳发送时间间隔添加新的心跳发送轮询;
步骤5、更新心跳发送时间;
步骤6、更新超时检测时间;
步骤7、继续进行节点状态检测和心跳媒介的检测,并将检测结果反馈集群各节点。
所述步骤2的检测发送心跳流程是否正确过程为:通过比较心跳发送时间与当前时间差值来确定检测心跳发送检测流程是否正常,如果是正数,表明心跳发送轮询正常;如果为非正数,则为异常。
所述步骤5的详细过程为:心跳发送时间更新为当前时间与心跳发送时间间隔×2之和,表明再经过更新后的心跳发送时间进行心跳发送轮询的异常检测。
所述步骤6的详细过程为:超时检测时间更新为当前时间与超时检测时间间隔×4之和,表明再经过更新后的超时检测时间进行超时检测轮询的异常检测。
本发明与现有技术相比所产生的有益效果是:
本发明的一种心跳模块自检测方法该心跳模块自检测方法应用于高可用集群,能够解决因轮询失效无法实时提供业务状态并及时进行业务报警的问题,解决了心跳发送异常问题;提高了节点和媒介状态检测的可靠性,及时发现故障,第一时间进行业务资源切换。
附图说明
附图1是本发明的发送心跳流程示意图。
附图2是本发明的检测心跳超时流程示意图。
具体实施方式
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于浪潮电子信息产业股份有限公司,未经浪潮电子信息产业股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310028990.5/2.html,转载请声明来源钻瓜专利网。