一种网管系统中WebSocket推送告警信息的方法及系统的制作方法

文档序号:9508450阅读:868来源:国知局
一种网管系统中WebSocket推送告警信息的方法及系统的制作方法
【技术领域】
[0001]本发明涉及网络通信的技术领域,特别是涉及一种网管系统中WebSocket推送告警信息的方法及系统。
【背景技术】
[0002]在浏览器中通过http仅能实现单向的通信,comet可以一定程度上模拟双向通信,但效率较低,并需要服务器有较好的支持。flash中的socket和xmlsocket可以实现真正的双向通信,通过flex ajax bridge,可以在javascript中使用这两项功能。面对这种状况,HTML5定义了 WebSocket协议,其实现了浏览器与服务器全双工通信,从而能够更好的节省服务器资源和带宽并达到实时通讯。
[0003]WebSocket作为HTML5引入的web应用的双工通信协议,可以用于网管系统中实时向浏览器客户端推送告警信息。如图1所示,一般网管系统中用WebSocket推送信息的做法是,网管服务器接收到一条设备上报的告警信息,即将告警信息通过WebSocket推送到各个客户端;客户端接收到网管服务器发来的WebSocket消息后,解析消息,刷新页面。
[0004]然而,在某个时间段告警消息量比较大的情况下,网管服务器会不停的向客户端发送消息,客户端会不停地解析消息,刷新页面。这会给服务器/浏览器客户端带来负担,同时增加了网络吞吐量。

【发明内容】

[0005]鉴于以上所述现有技术的缺点,本发明的目的在于提供一种网管系统中WebSocket推送告警信息的方法及系统,网管服务器对需要发送的告警信息进行缓存,通过监测单位时间片中需要推送的告警信息数目,动态调整WebSocket推送告警信息的时间片窗口的大小,将时间片窗口内的告警信息合并为一条告警消息发送至客户端,从而既能保证告警消息推送的实时性,又能减少网络吞吐量。
[0006]为实现上述目的及其他相关目的,本发明提供一种网管系统中WebSocket推送告警信息的方法,包括以下步骤:设置WebSocket推送告警信息的单位时间片和最大时间片的大小;将单位时间片作为当前时间片窗口,对当前时间片窗口网管服务器接收到的设备上报的告警信息进行缓存,并在当前时间片窗口结束时,将缓存的告警信息合并为一条信息通过WebSocket推送至客户端;监测当前时间片窗口所推送的告警信息的数目,计算单位时间片所推送的告警信息的数目;若单位时间片所推送的告警信息的数目小于预设阈值下限,则减小当前时间片窗口的大小;若单位时间片所推送的告警信息的数目大于预设阈值上限,则增大当前时间片窗口的大小;若单位时间片所推送的告警信息的数目介于预设阈值下限和预设阈值上限之间,则保持当前时间片窗口的大小不变。
[0007]于本发明的一实施例中,减小当前时间片窗口的大小时,将当前时间片窗口减少一个单位时间片的大小。
[0008]于本发明的一实施例中,减小当前时间片窗口的大小时,若减小后的当前时间片窗口小于等于单位时间片,则将单位时间片作为当前时间片窗口。
[0009]于本发明的一实施例中,增大当前时间片窗口的大小时,将当前时间片窗口增加一个单位时间片的大小。
[0010]于本发明的一实施例中,增大当前时间片窗口的大小时,若增大后的当前时间片窗口大于等于最大时间片,则将最大时间片作为当前时间片窗口。
[0011]同时,本发明还提供一种网管系统中WebSocket推送告警信息的系统,其特征在于:包括设置模块、缓存推送模块、监测计算模块和调整模块;
[0012]所述设置模块用于设置WebSocket推送告警信息的单位时间片和最大时间片的大小;
[0013]所述缓存推送模块用于将单位时间片作为当前时间片窗口,对当前时间片窗口网管服务器接收到的设备上报的告警信息进行缓存,并在当前时间片窗口结束时,将缓存的告警信息合并为一条信息通过WebSocket推送至客户端;
[0014]所述监测计算模块用于监测当前时间片窗口所推送的告警信息的数目,计算单位时间片所推送的告警信息的数目;
[0015]所述调整模块用于在单位时间片所推送的告警信息的数目小于预设阈值下限时,减小当前时间片窗口的大小;在单位时间片所推送的告警信息的数目大于预设阈值上限时,增大当前时间片窗口的大小;在单位时间片所推送的告警信息的数目介于预设阈值下限和预设阈值上限之间,保持当前时间片窗口的大小不变。
[0016]于本发明的一实施例中,减小当前时间片窗口的大小时,将当前时间片窗口减少一个单位时间片的大小。
[0017]于本发明的一实施例中,减小当前时间片窗口的大小时,若减小后的当前时间片窗口小于等于单位时间片,则将单位时间片作为当前时间片窗口。
[0018]于本发明的一实施例中,增大当前时间片窗口的大小时,将当前时间片窗口增加一个单位时间片的大小。
[0019]于本发明的一实施例中,增大当前时间片窗口的大小时,若增大后的当前时间片窗口大于等于最大时间片,则将最大时间片作为当前时间片窗口。
[0020]如上所述,本发明的网管系统中WebSocket推送告警信息的方法及系统,具有以下有益效果:
[0021](1)在单位时间片推送告警信息量比较大的情况下,增加推送的当前时间片窗P ;
[0022](2)在单位时间片推送告警信息量比较小的情况下,较小推送的当前时间片窗P ;
[0023](3)将多条告警信息合入一条消息中通过WebSocket进行推送,减少了服务器/客户端的通信压力,保证了告警消息推送的实时性。
【附图说明】
[0024]图1显示为现有技术中网管系统中WebSocket推送告警信息的示意图;
[0025]图2显示为本发明的网管系统中WebSocket推送告警信息的方法的流程图;
[0026]图3显示为本发明中网管系统中WebSocket推送告警信息的示意图;
[0027]图4显示为本发明的网管系统中WebSocket推送告警信息的系统的结构示意图。
[0028]元件标号说明
[0029]1 设置模块
[0030]2 缓存推送模块
[0031]3 监测计算模块
[0032]4 调整模块
【具体实施方式】
[0033]以下通过特定的具体实例说明本发明的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本发明的其他优点与功效。本发明还可以通过另外不同的【具体实施方式】加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本发明的精神下进行各种修饰或改变。需说明的是,在不冲突的情况下,以下实施例及实施例中的特征可以相互组合。
[0034]需要说明的是,以下实施例中所提供的图示仅以示意方式说明本发明的基本构想,遂图式中仅显示与本发明中有关的组件而非按照实际实施时的组件数目、形状及尺寸绘制,其实际实施时各组件的型态、数量及比例可为一种随意的改变,且其组件布局型态也可能更为复杂。
[0035]本发明的网管系统中WebSocket推送告警信息的方法及系统对需要推送的告警信息进行缓存,并将时间片窗口中的告警信息合并后一起发送到客户端;同时监测单位时间片中推送的告警消息的数目,若单位时间片中告警消息的数目超过预设阈值,则增加时间片窗口的大小;若单位时间片中告警信息的数目小于预设阈值,则减少时间片窗口的大小。
[0036]参照图2,本发明的网管系统中WebSocket推送告警信息的方法包括以下步骤:
[0037]步骤S1、设置WebSocket推送告警信息的单位时间片和最大时间片的大小。
[0038]其中,单位时间片即为WebSocket推送告警信息所需的最小时间间隔。最大时间片即为WebSocket推送告警信息所限定的最大时间间隔。设定单位时间片为T0,最大时间片为TP。优选地,最大时间片为单位时间片的整数倍。
[0039]步骤S2、将单位时间片作为当前时间片窗口,对当前时间片窗口网管服务器接收到的设备上报的告警信息进行缓存,并在当前时间片窗口结束时,将缓存的告警信息合并为一条信息通过WebSocket推送至客户端。
[0040]与现有技术中,网管服务器针对接收到的每条告警信息进行一次推送不同,本发明中首先将当前时间片窗口接收到的告警信息在网管服务器上缓存。设当前时间片窗口为
TKo
[0041]步骤S3、监测当前时间片窗口所推送的告警信息的数目,计算单位时间片所推送的告警信息的数目。
[0042]具体地,设当前时间片窗口所推送的告警信息的数目为m,则单位时间片所推送的告警信息的数目n = m*T0/TK。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1