[发明专利]一种内存的检测方法及装置有效
申请号: | 201811108892.1 | 申请日: | 2018-09-21 |
公开(公告)号: | CN109379246B | 公开(公告)日: | 2021-03-05 |
发明(设计)人: | 王鹏 | 申请(专利权)人: | 锐捷网络股份有限公司 |
主分类号: | H04L12/26 | 分类号: | H04L12/26;H04L12/24;H04L29/08 |
代理公司: | 北京同达信恒知识产权代理有限公司 11291 | 代理人: | 黄志华 |
地址: | 350002 福建省福州市仓*** | 国省代码: | 福建;35 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 内存 检测 方法 装置 | ||
本申请公开了一种内存的检测方法及装置。该方法执行步骤A:若判断获知第二内存区不存在空闲资源,则通过第一内存区的内存空间向第二设备发送心跳报文;步骤B:对第二内存区的当前内存空间与预设回补阈值进行比较;当第二内存区的当前内存空间不小于预设回补阈值时,确定第二内存区在当前时刻之前处于短暂异常;当第二内存区的当前内存空间小于预设回补阈值时,返回执行步骤A。该方法降低了现有技术中整体内存被待处理业务占满后无法发送心跳报文而引起的设备切换频率,即减少了设备间的切换次数,降低了丢包率,提高了心跳检测的准确性。
技术领域
本申请涉及通信技术领域,尤其涉及一种内存的检测方法及装置。
背景技术
分布式系统是一种通信网络互联的多设备体系结构,各个设备间通过协调交互来执行任务。在分布式通信系统中,可以利用心跳机制对设备间进行可靠性检测。心跳机制是指设备间定时发送一个自定义的结构体,如心跳报文,来通知对方当前自己的工作状态,以确保设备间的有效连接的机制。当检测到对方设备异常后,对该异常设备进行修复操作,如设备切换操作。
设备对心跳报文的收发依赖于该设备中操作系统的运行,如中央处理器(CentralProcess Unit,CPU)和/或内存资源的运行。在分布式系统中第一设备的CPU正在处理X业务,内存中缓存其他业务,如A业务和B业务,只有X业务处理完释放CPU后,CPU才能依次对A业务和B业务进行处理。其中,A业务和B业务为了不丢失数据报文,需要将待处理的数据报文缓存到自己的缓存队列中,且缓存的数据报文需要申请占用内存。
若CPU处理X业务时间较长,且内存被A业务和B业务的缓存报文占满,则设备间的心跳报文因没有空闲内存,将无法正常发送,在一段时间后第二设备(或称对端设备)确认第一设备异常,从而引起设备切换。
然而,CPU处理X业务的时间段是一种内存短暂耗尽的情况,在CPU处理完X业务,这种短暂耗尽的情况将会消失,第一设备的内存可恢复正常,但现有技术不能检测出内存短暂耗尽的情况,且上述设备切换会出现丢包现象,影响业务运行。
发明内容
本申请实施例提供一种内存的检测方法及装置,通过减少缓存的待处理业务量,为发送心跳报文提供内存空间,以降低了现有技术中内存被待处理业务占满,引起的设备切换频率,降低了丢包率。
第一方面,提供了一种内存的检测方法,应用在第一设备中,第一设备包括第一内存区和第二内存区,该方法可以包括:
步骤A:若判断获知第二内存区不存在空闲资源,则通过第一内存区的内存空间向第二设备发送一个心跳报文,第一内存区包括预设数量个心跳报文的报文占用空间;
步骤B:对第二内存区的当前内存空间与预设回补阈值进行比较,其中,首次进行比较的当前内存空间为第二内存区的初始内存空间;
当第二内存区的当前内存空间不小于预设回补阈值时,确定第二内存区在当前时刻之前处于短暂异常;
当第二内存区的当前内存空间小于预设回补阈值时,返回执行步骤A;
其中,第二内存区用于缓存当前运行业务和待处理业务,和并且在存在空闲资源时缓存待发送的心跳报文。
在一个可选的实现中,通过第一内存区的报文占用空间向第二设备发送一个心跳报文之后,该方法还包括:
释放第一内存区中心跳报文的报文占用空间。
当第二内存区的当前内存空间不小于预设回补阈值时,该方法还包括:
基于第二内存区的当前内存空间,对第一内存区中释放的报文占用空间进行回补,并更新第二内存区的当前内存空间。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于锐捷网络股份有限公司,未经锐捷网络股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201811108892.1/2.html,转载请声明来源钻瓜专利网。
- 上一篇:线圈部件
- 下一篇:一种园林养护用的基于磁力改变喷雾距离的喷雾器