CN114785846B - 一种基于ProtoBuf协议的心跳监控方法及*** - Google Patents
一种基于ProtoBuf协议的心跳监控方法及*** Download PDFInfo
- Publication number
- CN114785846B CN114785846B CN202210286266.1A CN202210286266A CN114785846B CN 114785846 B CN114785846 B CN 114785846B CN 202210286266 A CN202210286266 A CN 202210286266A CN 114785846 B CN114785846 B CN 114785846B
- Authority
- CN
- China
- Prior art keywords
- response
- heartbeat
- client
- server
- signal
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 34
- 238000012544 monitoring process Methods 0.000 title claims abstract description 31
- 230000004044 response Effects 0.000 claims abstract description 130
- 230000000694 effects Effects 0.000 claims description 26
- 238000012795 verification Methods 0.000 claims description 19
- 238000001514 detection method Methods 0.000 claims description 10
- 238000004364 calculation method Methods 0.000 claims description 7
- 238000002474 experimental method Methods 0.000 description 12
- 238000004590 computer program Methods 0.000 description 7
- 238000010586 diagram Methods 0.000 description 6
- 230000006870 function Effects 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 230000005540 biological transmission Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 238000011161 development Methods 0.000 description 2
- 230000014509 gene expression Effects 0.000 description 2
- 230000006399 behavior Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 239000000872 buffer Substances 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000008054 signal transmission Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/14—Session management
- H04L67/143—Termination or inactivation of sessions, e.g. event-controlled end of session
- H04L67/145—Termination or inactivation of sessions, e.g. event-controlled end of session avoiding end of session, e.g. keep-alive, heartbeats, resumption message or wake-up for inactive or interrupted session
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/10—Active monitoring, e.g. heartbeat, ping or trace-route
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/26—Special purpose or proprietary protocols or architectures
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Health & Medical Sciences (AREA)
- Cardiology (AREA)
- General Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- Computer Security & Cryptography (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明公开了提供一种基于ProtoBuf协议的心跳监控方法及***,其中方法包括:客户端基于ProtoBuf协议,构建请求心跳包,并将请求心跳包发送至服务端,所述请求心跳包包括心跳指令信号;响应于未接收到心跳指令信号,服务端关闭与客户端的连接通道;响应于未收到响应心跳包,客户端关闭与服务端的连接通道,并重新连接;响应于心跳指令信号,服务端基于ProtoBuf协议,构建响应心跳包,并将响应心跳包发送至客户端;获取客户端发送请求心跳包时的时间Ⅰ和接收响应心跳包时的时间Ⅱ,根据时间Ⅰ和时间Ⅱ计算ping值;比较ping值与预设阈值的大小,响应于ping值大于等于预设阈值,服务器触发告警信号。本发明能够提高并实时监控服务器的运行速度。
Description
技术领域
本发明涉及一种基于ProtoBuf协议的心跳监控方法及***,属于高并发技术领域。
背景技术
随着在互联网技术中的不断发展,人们的生活和互联网之间的关系越来越紧密,以前像线下的购物、旅行等生活方式,都在互联网技术的影响下,这些类似购物、旅行等活动会转变成在线上进行,互联网技术的产生极大的方便了人们的生活。
2020年中国互联网信息中心发布《第46次中国互联网络发展状况统计报告》,报告显示,截至2020年6月底我国互联网使用人数达9.4亿,较2020年3月增长3625万,互联网普及率达67%,较2020年3月提升2.5个百分点。同时在5G时代的全面开启,人们的日常生活和互联网的联系越来越紧密,互联网交互行为越来越多。在当下互联网时代背景下,庞大的业务请求和广阔的业务调用,高并发的场景越来越多,***所面临的压力变的越来越大。例如2021年春节微信抢红包的应用,在除夕至初五的6天时间里,全国微信红包收发总量突破460亿次,2020年淘宝双十一最大流量峰值在583万笔/秒,峰值是2009年淘宝第一次双十一的1457倍,高并发场景对于互联网***应用提出了非常高的要求。
因此,本申请提出一种基于ProtoBuf协议的心跳监控方法及***。
发明内容
本发明的目的在于克服现有技术中的不足,提供一种基于ProtoBuf协议的心跳监控方法及***,能够提高并实时监控服务器的运行速度。
为达到上述目的,本发明是采用下述技术方案实现的:
第一方面,本发明提供一种基于ProtoBuf协议的心跳监控方法,由客户端执行:
接收写入信号,响应于在预设时间Ⅰ内持续未接收到写入信号,则基于ProtoBuf协议构建请求心跳包,将请求心跳包发送至服务端,并接收服务端响应于心跳指令信号,基于ProtoBuf协议构建的响应心跳包;
响应于发送请求心跳包后,在预设时间Ⅱ内持续未收到响应心跳包,关闭与服务端的连接通道,并重新连接;
获取发送请求心跳包时的时间Ⅰ和接收响应心跳包时的时间Ⅱ,根据时间Ⅰ和时间Ⅱ计算ping值;
比较ping值与预设阈值的大小,响应于ping值大于等于预设阈值,触发告警信号;
所述请求心跳包包括心跳指令信号。
进一步地,所述请求心跳包包括:客户端标识号信号、客户端***内容信号、上传数据指令信号和验证指令号;
所述响应心跳包包括:服务端标识号信号、服务端***内容信号、响应指令信号、推送数据指令信号以及验证返回指令信号。
进一步地,所述响应于发送请求心跳包后,在预设时间Ⅱ内持续未收到响应心跳包,关闭与服务端的连接通道,并重新连接包括:
响应于发送请求心跳包后,在预设时间Ⅱ内持续未收到响应心跳包,则触发器生成客户端***活动状态信号,并将客户端***活动状态信号发送至客户端;
客户端根据客户端***活动状态信号,验证客户端***活动状态;
响应于客户端***活动状态为心跳检测活动状态,判断客户端失败心跳计数器的累计值Ⅰ与预设的上限次数Ⅰ的大小:
其中,当累计值Ⅰ大于等于预设的上限次数Ⅰ,则客户端关闭与服务端的连接通道,并重新连接;
当累计值Ⅰ小于预设的上限次数Ⅰ,则客户端再次将请求心跳包发送至服务端;
响应于客户端再次将请求心跳包发送至服务端,客户端失败心跳计数器加1。
进一步地,所述的基于ProtoBuf协议的心跳监控方法包括:
响应于服务端将响应心跳包发送至客户端,客户端失败心跳计数器清零。
第二方面,本发明提供一种基于ProtoBuf协议的心跳监控方法,由服务端执行:
接收客户端发射的心跳指令信号,响应于在预设时间Ⅲ内持续未接收到客户端发射的心跳指令信号,则关闭与客户端的连接通道,等待客户端重连;
响应于客户端发射的心跳指令信号,则基于ProtoBuf协议构建响应心跳包,并将响应心跳包发送至客户端;
获取发送请求心跳包时的时间Ⅰ和接收响应心跳包时的时间Ⅱ,根据时间Ⅰ和时间Ⅱ计算ping值;
比较ping值与预设阈值的大小,响应于ping值大于等于预设阈值,触发告警信号。
进一步地,所述请求心跳包包括:客户端标识号信号、客户端***内容信号、上传数据指令信号和验证指令号;
所述响应心跳包包括:服务端标识号信号、服务端***内容信号、响应指令信号、推送数据指令信号以及验证返回指令信号。
进一步地,所述响应于在预设时间Ⅲ内持续未接收到服务端发射的心跳指令信号,服务端关闭与客户端的连接通道包括:
响应于在预设时间Ⅲ内持续未接收到请求信号,服务端触发器生成服务端***活动状态信号,并将服务端***活动状态信号发送至服务端;
服务端根据服务端***活动状态信号,验证服务端***活动状态;
响应于服务端***活动状态为非心跳检测活动状态,判断服务端失败心跳计数器的累计值Ⅱ与预设的上限次数Ⅱ的大小:
其中,当累计值Ⅱ大于等于预设的上限次数Ⅱ,则服务端关闭与客户端的连接通道,等待客户端重新连接;
当累计值Ⅱ小于预设的上限次数Ⅱ,则服务端失败心跳计数器加1。
进一步地,所述的基于ProtoBuf协议的心跳监控方法包括:
响应于服务端将响应心跳包发送至客户端,服务端失败心跳计数器清零。
第三方面,本发明提供一种基于ProtoBuf协议的心跳监控***,包括:
请求响应模块,接收写入信号,响应于在预设时间Ⅰ内持续未接收到写入信号,则基于ProtoBuf协议构建请求心跳包,将请求心跳包发送至服务端,并接收服务端响应于心跳指令信号,基于ProtoBuf协议构建的响应心跳包;
重连模块,用于响应于发送请求心跳包后,在预设时间Ⅱ内持续未收到响应心跳包,关闭与服务端的连接通道,并重新连接;
ping值计算模块,用于获取发送请求心跳包时的时间Ⅰ和接收响应心跳包时的时间Ⅱ,根据时间Ⅰ和时间Ⅱ计算ping值;
告警模块,用于比较ping值与预设阈值的大小,响应于ping值大于等于预设阈值,触发告警信号。
第四方面,本发明提供一种基于ProtoBuf协议的心跳监控***,包括:
断连模块,用于接收客户端发射的心跳指令信号,响应于在预设时间Ⅲ内持续未接收到客户端发射的心跳指令信号,则关闭与客户端的连接通道,等待客户端重连;
响应模块,用于响应于客户端发射的心跳指令信号,则基于ProtoBuf协议构建响应心跳包,并将响应心跳包发送至客户端;
ping值计算模块,用于获取发送请求心跳包时的时间Ⅰ和接收响应心跳包时的时间Ⅱ,根据时间Ⅰ和时间Ⅱ计算ping值;
告警模块,用于比较ping值与预设阈值的大小,响应于ping值大于等于预设阈值,触发告警信号。
与现有技术相比,本发明所达到的有益效果:
本发明基于ProtoBuf协议的心跳监控方法能够提高并实时监控服务器的运行速度,并在发生宕机后,实现客户端和服务端自动重连,及时优化网络资源使用率和网络传输速率,提高了服务器在高并发环境中正常运行的可靠性。
附图说明
图1所示为本发明基于ProtoBuf协议的心跳监控方法的一种实施例流程图;
图2所示为本发明基于ProtoBuf协议的心跳监控方法的一种实施例流程图。
具体实施方式
下面结合附图对本发明作进一步描述。以下实施例仅用于更加清楚地说明本发明的技术方案,而不能以此来限制本发明的保护范围。
建立连接的客户端和服务端之间在预设时间内未发生信号传递后,通过心跳监控方法计算服务器的ping值,用于初判服务器运行是否正常。
ProtoBuf协议全称Google Protocol Buffers协议,是***开发的的一套用于数据存储,网络通信时用于协议编解码的工具库。相比于Json协议和Kryo协议,ProtoBuf协议具有更高的转化效率,时间效率和空间效率,因此本申请基于ProtoBuf协议,构建请求心跳包和响应心跳包。
实施例1
本实施例提供一种基于ProtoBuf协议的心跳监控方法,参考图1,由客户端执行:
S11接收写入信号,响应于在预设时间Ⅰ内持续未接收到写入信号,则基于ProtoBuf协议构建请求心跳包,将请求心跳包发送至服务端,并接收服务端响应于心跳指令信号,基于ProtoBuf协议构建的响应心跳,其中,请求心跳包包括心跳指令信号;
S12响应于发送请求心跳包后,在预设时间Ⅱ内持续未收到响应心跳包,关闭与服务端的连接通道,并重新连接;
S13获取发送请求心跳包时的时间Ⅰ和接收响应心跳包时的时间Ⅱ,根据时间Ⅰ和时间Ⅱ计算ping值,应用中,ping值为时间Ⅰ和时间Ⅱ的时间差的一半;
S14比较ping值与预设阈值的大小,响应于ping值大于等于预设阈值,触发告警信号。
本发明基于ProtoBuf协议的心跳监控方法能够提高并实时监控服务器的运行速度,并在发生宕机后,实现客户端和服务端自动重连,及时优化网络资源使用率和网络传输速率,提高了服务器在高并发环境中正常运行的可靠性。
实施例2
在实施例1的基础上,本实施例详细介绍了请求心跳包和响应心跳包。
首先基于ProtoBuf协议定义出消息协议文件和指令类型协议文件;
然后,通过消息协议文件生成消息类文件,消息协议文件和消息类文件的内容表达意思一致,消息类文件为Message.java,能够用于***运行;通过指令类型协议文件生成指令类型类文件,指令类型协议文件和指令类型类文件的内容表达意思一致,指令类型类文件为Command.java,能够用于***运行。
请求心跳包和响应心跳包均包括消息类文件和指令类型类文件。
请求心跳包的消息类文件包括三组数据:客户端标识号、客户端***内容和指令类型;其中,请求心跳包的指令类型包括:心跳指令、验证指令、上传数据指令和推送数据指令;客户端***内容是客户端***内部逻辑产生;
请求心跳包的指令类型类文件包括心跳指令、验证指令、上传数据指令和推送数据指令对应的数据,是客户端***内部逻辑产生。
响应心跳包的消息类文件包括三组数据:服务端标识号、服务端***内容以及指令类型;其中,响应心跳包的指令类型包括:响应指令、验证返回指令、上传数据指令和推送数据指令;服务端***内容是服务端***内部逻辑产生。
响应心跳包的指令类型类文件包括响应指令、验证返回指令、上传数据指令和推送数据指令对应的数据,是服务端***内部逻辑产生。
因此,本实施例的请求心跳包能够传递客户端标识号信号、客户端***内容信号、心跳指令信号、验证指令信号、上传数据指令信号和推送数据指令信号;响应心跳包能够传递服务端标识号信号、服务端***内容信号、响应指令信号、验证返回指令信号、上传数据指令信号和推送数据指令信号。
实施例3
在实施例1或2的基础上,本实施例详细介绍了请求心跳周期:
响应于发送请求心跳包后,在预设时间Ⅱ内持续未收到响应心跳包,关闭与服务端的连接通道,并重新连接客户端与服务端的连接通道,包括:
S121响应于发送请求心跳包后,在预设时间Ⅱ内持续未收到响应心跳包,关闭与服务端的连接通道,并重新连接包括:
S122响应于发送请求心跳包后,在预设时间Ⅱ内持续未收到响应心跳包,则触发器生成客户端***活动状态信号,并将客户端***活动状态信号发送至客户端;
S123客户端根据客户端***活动状态信号,验证客户端***活动状态;
S124响应于客户端***活动状态为心跳检测活动状态,判断客户端失败心跳计数器的累计值Ⅰ与预设的上限次数Ⅰ的大小:
其中,当累计值Ⅰ大于等于预设的上限次数Ⅰ,则客户端关闭与服务端的连接通道,并重新连接;
当累计值Ⅰ小于预设的上限次数Ⅰ,则客户端再次将请求心跳包发送至服务端;
S125响应于客户端再次将请求心跳包发送至服务端,客户端失败心跳计数器加1。
应用中,响应于客户端***活动状态为非心跳检测活动状态或者客户端接收到到响应心跳包,客户端失败心跳计数器清零。
实施例4
本实施例提供一种基于ProtoBuf协议的心跳监控方法,参考图2,由服务端执行:
S21接收客户端发射的心跳指令信号,响应于在预设时间Ⅲ内持续未接收到客户端发射的心跳指令信号,则关闭与客户端的连接通道,等待客户端重连;
S22响应于客户端发射的心跳指令信号,则基于ProtoBuf协议构建响应心跳包,并将响应心跳包发送至客户端;
S23获取发送请求心跳包时的时间Ⅰ和接收响应心跳包时的时间Ⅱ,根据时间Ⅰ和时间Ⅱ计算ping值;
S24比较ping值与预设阈值的大小,响应于ping值大于等于预设阈值,触发告警信号。
应用中,请求心跳包包括:客户端标识号信号、客户端***内容信号、心跳指令信号、上传数据指令信号和验证指令号;响应心跳包包括:服务端标识号信号、服务端***内容信号、响应指令信号、推送数据指令信号以及验证返回指令信号。
本发明基于ProtoBuf协议的心跳监控方法能够提高并实时监控服务器的运行速度,并在发生宕机后,实现客户端和服务端断开,及时优化网络资源使用率和网络传输速率,提高了服务器在高并发环境中正常运行的可靠性。
实施例5
在实施例4的基础上,本实施例详细介绍了响应心跳周期:
响应于在预设时间Ⅲ内持续未接收到客户端发射的心跳指令信号,服务端关闭与客户端的连接通道,包括:
S211响应于在预设时间Ⅲ内持续未接收到请求信号,服务端触发器生成服务端***活动状态信号,并将服务端***活动状态信号发送至服务端;
S212服务端根据服务端***活动状态信号,验证服务端***活动状态;
S213响应于服务端***活动状态为非心跳检测活动状态,判断服务端失败心跳计数器的累计值Ⅱ与预设的上限次数Ⅱ的大小:
其中,当累计值Ⅱ大于等于预设的上限次数Ⅱ,则服务端关闭与客户端的连接通道,等待客户端重新连接;
当累计值Ⅱ小于预设的上限次数Ⅱ,则服务端失败心跳计数器加1。
应用中,响应于心跳指令信号或服务端***活动状态为心跳检测活动状态,服务端基于ProtoBuf协议,构建响应心跳包,并将响应心跳包发送至客户端;响应于服务端将响应心跳包发送至客户端,服务端失败心跳计数器清零。
实施例6
在实施例1-5任一实施例的基础上,本实施例启动A、B、C三台服务器,其中A服务器的心跳包基于Json协议构建,B服务器的心跳包基于Kryo协议构建,C服务器的心跳包基于ProtoBuf协议构建。
将A、B、C三台服务器同时连续进行10次心跳检测实验。每次实验过程中,各服务器的客户端均发出lw次并发求和计算请求,并统计每台服务器每次实验的ping值,单位ms。
表1 A、B、C三台服务器10次心跳检测的ping值
服务器 | A | B | C |
第一次实验 | 11253 | 5689 | 5366 |
第二次实验 | 6605 | 5530 | 4963 |
第三次实验 | 5988 | 5764 | 5532 |
第四次实验 | 5633 | 5326 | 5267 |
第五次实验 | 6032 | 6011 | 5628 |
第六次实验 | 6785 | 5628 | 5536 |
第七次实验 | 5923 | 5963 | 5126 |
第八次实验 | 6555 | 6032 | 5264 |
第九次实验 | 6322 | 5786 | 5367 |
第十次实验 |
通过表1可知,基于ProtoBuf协议构建心跳包的服务器的ping值明显低于Kryo协议和Json协议。由此可见,本实施例能够提高服务器的运行速度。
实施例7
本实施例提供一种基于ProtoBuf协议的心跳监控***,包括:
请求响应模块,接收写入信号,响应于在预设时间Ⅰ内持续未接收到写入信号,则基于ProtoBuf协议构建请求心跳包,将请求心跳包发送至服务端,并接收服务端响应于心跳指令信号,基于ProtoBuf协议构建的响应心跳;
重连模块,用于响应于发送请求心跳包后,在预设时间Ⅱ内持续未收到响应心跳包,关闭与服务端的连接通道,并重新连接;
ping值计算模块,用于获取发送请求心跳包时的时间Ⅰ和接收响应心跳包时的时间Ⅱ,根据时间Ⅰ和时间Ⅱ计算ping值,ping值为时间Ⅰ和时间Ⅱ的时间差的一半;
告警模块,用于比较ping值与预设阈值的大小,响应于ping值大于等于预设阈值,触发告警信号。
上述各功能模块的具体功能实现参照实施例1-3方法中的相关内容
实施例8
本实施例提供一种基于ProtoBuf协议的心跳监控***,包括:
断连模块,用于接收客户端发射的心跳指令信号,响应于在预设时间Ⅲ内持续未接收到客户端发射的心跳指令信号,则关闭与客户端的连接通道,等待客户端重连;
响应模块,用于响应于客户端发射的心跳指令信号,则基于ProtoBuf协议构建响应心跳包,并将响应心跳包发送至客户端;
ping值计算模块,用于获取发送请求心跳包时的时间Ⅰ和接收响应心跳包时的时间Ⅱ,根据时间Ⅰ和时间Ⅱ计算ping值;
告警模块,用于比较ping值与预设阈值的大小,响应于ping值大于等于预设阈值,触发告警信号。
上述各功能模块的具体功能实现参照实施例4-5方法中的相关内容
本领域内的技术人员应明白,本申请的实施例可提供为方法、***、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(***)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
以上结合附图对本发明的实施例进行了描述,但是本发明并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本发明的启示下,在不脱离本发明宗旨和权利要求所保护的范围情况下,还可做出很多形式,这些均属于本发明的保护之内。
Claims (8)
1.一种基于ProtoBuf协议的心跳监控方法,其特征在于,由客户端执行:
接收写入信号,响应于在预设时间Ⅰ内持续未接收到写入信号,则基于ProtoBuf协议构建请求心跳包,将请求心跳包发送至服务端,并接收服务端响应于心跳指令信号,基于ProtoBuf协议构建的响应心跳包;
响应于发送请求心跳包后,在预设时间Ⅱ内持续未收到响应心跳包,关闭与服务端的连接通道,并重新连接;
获取发送请求心跳包时的时间Ⅰ和接收响应心跳包时的时间Ⅱ,根据时间Ⅰ和时间Ⅱ计算ping值;
比较ping值与预设阈值的大小,响应于ping值大于等于预设阈值,触发告警信号;
所述请求心跳包包括心跳指令信号;
所述请求心跳包包括:客户端标识号信号、客户端***内容信号、上传数据指令信号和验证指令号;
所述响应心跳包包括:服务端标识号信号、服务端***内容信号、响应指令信号、推送数据指令信号以及验证返回指令信号。
2.根据权利要求1所述的基于ProtoBuf协议的心跳监控方法,其特征在于,所述响应于发送请求心跳包后,在预设时间Ⅱ内持续未收到响应心跳包,关闭与服务端的连接通道,并重新连接包括:
响应于发送请求心跳包后,在预设时间Ⅱ内持续未收到响应心跳包,则触发器生成客户端***活动状态信号,并将客户端***活动状态信号发送至客户端;
客户端根据客户端***活动状态信号,验证客户端***活动状态;
响应于客户端***活动状态为心跳检测活动状态,判断客户端失败心跳计数器的累计值Ⅰ与预设的上限次数Ⅰ的大小:
其中,当累计值Ⅰ大于等于预设的上限次数Ⅰ,则客户端关闭与服务端的连接通道,并重新连接;
当累计值Ⅰ小于预设的上限次数Ⅰ,则客户端再次将请求心跳包发送至服务端;
响应于客户端再次将请求心跳包发送至服务端,客户端失败心跳计数器加1。
3.根据权利要求2所述的基于ProtoBuf协议的心跳监控方法,其特征在于,包括以下步骤:
响应于服务端将响应心跳包发送至客户端,客户端失败心跳计数器清零。
4.一种基于ProtoBuf协议的心跳监控方法,其特征在于,由服务端执行:
接收客户端发射的心跳指令信号,响应于在预设时间Ⅲ内持续未接收到客户端发射的心跳指令信号,则关闭与客户端的连接通道,等待客户端重连;
响应于客户端发射的心跳指令信号,则基于ProtoBuf协议构建响应心跳包,并将响应心跳包发送至客户端;
获取发送请求心跳包时的时间Ⅰ和接收响应心跳包时的时间Ⅱ,根据时间Ⅰ和时间Ⅱ计算ping值;
比较ping值与预设阈值的大小,响应于ping值大于等于预设阈值,触发告警信号;
所述请求心跳包包括:客户端标识号信号、客户端***内容信号、上传数据指令信号和验证指令号;
所述响应心跳包包括:服务端标识号信号、服务端***内容信号、响应指令信号、推送数据指令信号以及验证返回指令信号。
5.根据权利要求4所述的基于ProtoBuf协议的心跳监控方法,其特征在于,所述响应于在预设时间Ⅲ内持续未接收到服务端发射的心跳指令信号,服务端关闭与客户端的连接通道包括:
响应于在预设时间Ⅲ内持续未接收到请求信号,服务端触发器生成服务端***活动状态信号,并将服务端***活动状态信号发送至服务端;
服务端根据服务端***活动状态信号,验证服务端***活动状态;
响应于服务端***活动状态为非心跳检测活动状态,判断服务端失败心跳计数器的累计值Ⅱ与预设的上限次数Ⅱ的大小:
其中,当累计值Ⅱ大于等于预设的上限次数Ⅱ,则服务端关闭与客户端的连接通道,等待客户端重新连接;
当累计值Ⅱ小于预设的上限次数Ⅱ,则服务端失败心跳计数器加1。
6.根据权利要求5所述的基于ProtoBuf协议的心跳监控方法,其特征在于,包括以下步骤:
响应于服务端将响应心跳包发送至客户端,服务端失败心跳计数器清零。
7.一种基于ProtoBuf协议的心跳监控***,其特征在于,包括:
请求响应模块,接收写入信号,响应于在预设时间Ⅰ内持续未接收到写入信号,则基于ProtoBuf协议构建请求心跳包,将请求心跳包发送至服务端,并接收服务端响应于心跳指令信号,基于ProtoBuf协议构建的响应心跳包;
重连模块,用于响应于发送请求心跳包后,在预设时间Ⅱ内持续未收到响应心跳包,关闭与服务端的连接通道,并重新连接;
ping值计算模块,用于获取发送请求心跳包时的时间Ⅰ和接收响应心跳包时的时间Ⅱ,根据时间Ⅰ和时间Ⅱ计算ping值;
告警模块,用于比较ping值与预设阈值的大小,响应于ping值大于等于预设阈值,触发告警信号;
所述请求心跳包包括:客户端标识号信号、客户端***内容信号、上传数据指令信号和验证指令号;
所述响应心跳包包括:服务端标识号信号、服务端***内容信号、响应指令信号、推送数据指令信号以及验证返回指令信号。
8.一种基于ProtoBuf协议的心跳监控***,其特征在于,包括:
断连模块,用于接收客户端发射的心跳指令信号,响应于在预设时间Ⅲ内持续未接收到客户端发射的心跳指令信号,则关闭与客户端的连接通道,等待客户端重连;
响应模块,用于响应于客户端发射的心跳指令信号,则基于ProtoBuf协议构建响应心跳包,并将响应心跳包发送至客户端;
ping值计算模块,用于获取发送请求心跳包时的时间Ⅰ和接收响应心跳包时的时间Ⅱ,根据时间Ⅰ和时间Ⅱ计算ping值;
告警模块,用于比较ping值与预设阈值的大小,响应于ping值大于等于预设阈值,触发告警信号;
所述请求心跳包包括:客户端标识号信号、客户端***内容信号、上传数据指令信号和验证指令号;
所述响应心跳包包括:服务端标识号信号、服务端***内容信号、响应指令信号、推送数据指令信号以及验证返回指令信号。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210286266.1A CN114785846B (zh) | 2022-03-23 | 2022-03-23 | 一种基于ProtoBuf协议的心跳监控方法及*** |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210286266.1A CN114785846B (zh) | 2022-03-23 | 2022-03-23 | 一种基于ProtoBuf协议的心跳监控方法及*** |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114785846A CN114785846A (zh) | 2022-07-22 |
CN114785846B true CN114785846B (zh) | 2024-05-24 |
Family
ID=82425583
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210286266.1A Active CN114785846B (zh) | 2022-03-23 | 2022-03-23 | 一种基于ProtoBuf协议的心跳监控方法及*** |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114785846B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102546437A (zh) * | 2012-02-20 | 2012-07-04 | 南京邮电大学 | 一种面向物联网平台的套接字实现方法 |
CN109905259A (zh) * | 2017-12-08 | 2019-06-18 | 中国电信股份有限公司 | 通信连接维持方法、***和相关设备 |
CN110661673A (zh) * | 2018-06-28 | 2020-01-07 | 网宿科技股份有限公司 | 一种心跳检测的方法及装置 |
WO2020211373A1 (zh) * | 2019-04-19 | 2020-10-22 | 平安科技(深圳)有限公司 | 基于中间服务器的心跳包发送方法、装置和计算机设备 |
-
2022
- 2022-03-23 CN CN202210286266.1A patent/CN114785846B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102546437A (zh) * | 2012-02-20 | 2012-07-04 | 南京邮电大学 | 一种面向物联网平台的套接字实现方法 |
CN109905259A (zh) * | 2017-12-08 | 2019-06-18 | 中国电信股份有限公司 | 通信连接维持方法、***和相关设备 |
CN110661673A (zh) * | 2018-06-28 | 2020-01-07 | 网宿科技股份有限公司 | 一种心跳检测的方法及装置 |
WO2020211373A1 (zh) * | 2019-04-19 | 2020-10-22 | 平安科技(深圳)有限公司 | 基于中间服务器的心跳包发送方法、装置和计算机设备 |
Non-Patent Citations (4)
Title |
---|
Performance analysis of a NB-IoT based smart lamp solution with application enabled platform(Conference Paper);Lou, Sijia;《Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)》;20191231;全文 * |
SCTP协议分析与仿真研究;夏云;孙力娟;叶晓国;肖甫;;计算机技术与发展;20091110(第11期);全文 * |
基于改进心跳包机制的整流远程监控***;胡志坤;何多昌;桂卫华;阳春华;;计算机应用;20080215(第02期);全文 * |
多指标综合评价的负载均衡路由策略研究;倪晓军;《小型微型计算机***》;20170215;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN114785846A (zh) | 2022-07-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101953139B (zh) | 响应于网络层连通性的dhcp初始化 | |
JP2018508072A (ja) | メッセージをプッシュするための方法および装置 | |
CN103795762A (zh) | 一种反向代理的测试方法及*** | |
CN105656763A (zh) | 一种消息推送方法和装置 | |
CN111277846A (zh) | 一种直播的异常定位方法、装置、计算机设备和存储介质 | |
CN114357495B (zh) | 基于区块链的预言机链下聚合方法、装置、设备和介质 | |
CN111459834B (zh) | 一种异步交易性能测试方法及装置 | |
JP2013533555A5 (zh) | ||
CN108712289B (zh) | 采用硬件实现的tte端***网络管理装置 | |
CN114785846B (zh) | 一种基于ProtoBuf协议的心跳监控方法及*** | |
CN111131499A (zh) | 并发和异步任务处理方法及其设备 | |
CN103428070B (zh) | 即时群体通信方法、会话管理服务器及客户端 | |
CN111930548B (zh) | 一种多集群分布式服务的故障模拟*** | |
CN108614820B (zh) | 实现流式源数据解析的方法和装置 | |
CN113301103A (zh) | 数据处理***、方法及装置 | |
CN114640705B (zh) | 一种大规模物联终端心跳监控方法 | |
US10506021B2 (en) | Method and device for providing communication connection for a plurality of candidate applications in a mobile device | |
CN106850153B (zh) | 数据重传方法及*** | |
CN114172958B (zh) | 隐私计算节点、***、方法、装置以及存储介质 | |
WO2017107462A1 (zh) | 基于p2p网络的数据处理方法、装置及*** | |
Saveliev et al. | Architecture of data exchange with minimal client-server interaction at multipoint video conferencing | |
CN111245705B (zh) | 一种实现培训仿真的服务器、客户端即时通信的方法 | |
CN108173849B (zh) | 一种视频服务质量的监测***及方法 | |
CN114095404B (zh) | 基于流计算的视频设备状态计算输出方法、装置和设备 | |
CN201398238Y (zh) | 一种获取短信数据的*** |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |