WebSocket服务器监控方法及装置的制造方法

文档序号:9551130阅读:543来源:国知局
WebSocket服务器监控方法及装置的制造方法
【技术领域】
[0001]本发明涉及互联网技术领域,特别是涉及一种WebSocket服务器监控方法及装置。
【背景技术】
[0002]WebSocket 是第五版超文本标记语言(Hyper Text Mart-up Language5,简称为HTML5)新增加的一种通信协议,目前流行的浏览器(例如,chrome浏览器/ie浏览器/firefox浏览器)都支持这个协议。随着支持浏览器的增多,越来越多的jsp/servelet容器也开始支持该协议,例如,tomcat容器和jetty容器。相比传统的超文本传输协议(Hypertext transfer protocol,简称为HTTP)协议,它们的共同点都是基于传输控制协议(Transmiss1n Control Protocol,简称为TCP)的,所以他们都是可靠的协议,而且他们都是应用层的协议。它们的区别在于HTTP协议是一种单向的网络协议,在建立链接后,它只允许浏览器/用户代理(User Agent,简称为UA)向Webserver发出请求资源后,Webserver才能返回相应的数据。而Webserver不能主动的推送数据给浏览器/UA ;而WebSocket协议是一种双向通信协议,它建立在TCP之上,同HTTP —样通过TCP来传输数据,但是它和HTTP最大的不同有两点:1、WebSocket是一种双向通信协议,在建立链接后,WebSocket服务器和浏览器/UA都能主动的向对方发送或接收数据,就像Socket —样,不同的是WebSocket是一种建立在Web基础上的一种简单模拟Socket的协议;2、WebSocket需要通过握手链接,类似于TCP,WebSocket也需要客户端和服务器端进行握手链接,链接成功后才能相互通信。
[0003]在商用的环境下,为能自动监控HTTP服务的运行情况,为能在无人值守时刻自动恢复发生异常的HTTP服务容器,现有技术中典型处理方式是加入HTTP服务监控器。这种HTTP服务监控器的工作原理是:加入预定的动态页面,设置HTTP请求服务连续异常的阈值,HTTP服务监控器循环请求该动态页面的HTTP服务,通过对比预期响应和实际响应的一致性判断HTTP请求服务是否正常,当HTTP服务连续异常次数超过设置的阈值,则重启HTTP服务容器。上述处理能够非常好的监控HTTP协议服务。但是对于新兴的WebSocket协议服务,上述监控方式的不适用性是很明显的,主要表现在WebSocket服务特性具有主动推送数据的特性,一次简单的请求/响应机制并不能准确判断WebSocket服务提供可用性、稳定性和推送数据功能的准确性。
[0004]在长期无间隙运行的Webserver商用环境下,确保Webserver的运行正常是个极其重要和繁琐的工作,这是因为一旦Webserver发生异常,那么部署在该容器上的所有业务会全部不可用。环境若没有实现自动监控和恢复Webserver功能,那么必须要求运维人员实现24小时的值守,这样的人工处理对运维成本的要求比较高。另外由于异常发生的监控和恢复都是由人工来处理,则会产生方法笨搓、效率比较低下和恢复延迟的问题。

【发明内容】

[0005]鉴于现有技术中针对HTTP服务的自动监控方式不能够适用于WebSocket服务的问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的WebSocket服务器监控方法及装置。
[0006]本发明提供一种WebSocket服务器监控方法,包括:
[0007]步骤1,请求监控器模块请求与WebSocket服务器中的监控应用模块建立链接;
[0008]步骤2,请求监控器模块在建立链接后,接收监控应用模块推送的数据并向其返回响应消息,根据数据判断WebSocket服务器是否运行正常,其中,数据包括:顺序标识数据;
[0009]步骤3,请求监控器模块在判断运行正常的情况下,重复执行步骤2,直到根据监控应用模块的请求断开链接,并将本次链接请求设置为正常;请求监控器模块在判断运行异常的情况下,向监控应用模块发送异常响应,根据监控应用模块的请求断开链接,并将本次链接请求设置为异常;
[0010]步骤4,当链接请求的异常次数达到预先设置的阈值时,请求监控器模块向信号接收处理器模块发送报警信号,并通过信号接收处理器模块对报警信号进行处理。
[0011]优选地,请求监控器模块在建立链接后,接收监控应用模块推送的数据并向其返回响应消息具体包括:
[0012]请求监控器模块在建立链接后,如果接收到监控应用模块推送的第一个数据,则获取第一个数据中携带的第一顺序标识数据,并在对第一顺序标识数据进行确认后,向监控应用模块返回第一响应消息;
[0013]请求监控器模块在建立链接后,如果接收到监控应用模块推送的第η个数据,则获取第η个数据中携带的第η个顺序标识数据和请求监控器模块向监控应用模块返回的第η-l个响应消息,并在对第η个顺序标识数据和第η-l个响应消息进行确认后,向监控应用模块返回第η个响应消息,其中,2 < η ( Ν,Ν为请求监控器模块与监控应用模块建立链接的时间段内预设的数据推送个数。
[0014]优选地,根据数据判断WebSocket服务器是否运行正常具体包括:
[0015]请求监控器模块在成功建立链接的情况下,在接收到监控应用模块推送的第一个数据后,获取数据中的顺序标识数据,根据顺序标识数据判断接收到的数据是否为顺序正确的数据,如果判断为是,则确定WebSocket服务器运行正常,否则,确定WebSocket服务器运行异常。
[0016]优选地,数据还包括:采集的系统数据,系统数据包括:中央处理器数据、以及内存数据。
[0017]优选地,根据数据判断WebSocket服务器是否运行正常具体包括:
[0018]请求监控器模块在成功建立链接的情况下,在接收到监控应用模块推送的第一个数据后,获取数据中的顺序标识数据,根据顺序标识数据判断接收到的数据是否为有序数据,并且,判断数据中的系统数据是否小于预设阈值,如果均判断为是,则确定WebSocket服务器运行正常,否则,确定WebSocket服务器运行异常。
[0019]优选地,在监控应用模块向请求监控器模块推送数据后,未接收到请求监控器模块发送的响应消息的情况下,请求监控器模块接收监控应用模块发送的异常响应,根据监控应用模块的请求断开链接,并将本次链接请求设置为异常。
[0020]优选地,步骤3具体包括:
[0021]请求监控器模块在判断运行正常的情况下,间隔固定周期循环执行步骤2,直到根据监控应用模块的请求断开链接,并将本次链接请求设置为正常,其中,在监控应用模块接收到请求监控器模块发送的针对其推送的最后一个数据而返回响应消息后,向请求监控器模块发送断开链接请求。
[0022]优选地,步骤4具体包括:
[0023]当链接请求的异常次数达到预先设置的第一告警阈值时,请求监控器模块向信号接收处理器模块发送第一告警信号,通过信号接收处理器模块调用相应命令向告警平台进行告警;
[0024]当链接请求的异常次数达到预先设置的第一重启服务器阈值时,请求监控器模块向信号接收处理器模块发送第一重启服务器信号,通过信号接收处理器模块调用相应命令对WebSocket服务器进行重启,其中,第一重启服务器阈值大于第一告警阈值;
[0025]当累积重启WebSocket服务器的次数达到切换双机阈值时,请求监控器模块向信号接收处理器模块发送双机倒换信号,通过信号接收处理器模块调用相应命令对进行WebSocket服务器的双机倒换。
[0026]优选地,步骤4还包括:当中央处理器数据、和/或内存数据达到预先设置的相应阈值时,请求监控器模块向信号接收处理器模块发送报警信号,并通过信号接收处理器模块对报警信号进行处理。
[0027]优选地,上述方法进一步包括:
[0028]请求监控器模块向信号接收处理器模块发送第一心跳信息,接收信号接收处理器模块返回的第一心跳响应消息,当接收到的第一心跳响应消息异常次数累计大于重启阈值时,向信号接收处理器模块发送重启命令,对信号接收处理器模块进行重启;
[0029]请求监控器模块接收信号接收处理器模块发送的第二心跳信息,向信号接收处理器模块返回第二心跳响应消息,在信号接收处理器模块确定接收到的第二心跳响应消息异常次数累计大于重启阈值时,接收信号接收处理器模块发送的重启命令,并根据重启命令进行重启。
[0030]本发明还提供了一种WebSocket服务器监控装置,包括:
[0031]请求模块,用于请求与WebSocket服务器中的监控应用模块建立链接;
[0032]判断模块,用于在建立链接后,接收监控应用模块推送的数据并向其返回响应消息,根据数据判断WebSocket服务器是否运行正常,其中,数据包括:顺序标识数据;
[0033]设置模块,用于
当前第1页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1