消息队列监控方法、装置、电子设备和介质制造方法及图纸

技术编号:25947853 阅读:14 留言:0更新日期:2020-10-17 03:39
本公开提供了一种消息队列监控方法,包括:获取监控数据;基于所述监控数据,确定所述消息队列的当前可承载量和下一时刻的预测深度值;基于所述消息队列的当前可承载量确定所述消息队列的报警阈值;以及在所述消息队列的下一时刻的预测深度值超过所述报警阈值的情况下,确定所述消息队列处于阻塞状态。本公开实施例还提供了一种消息队列监控装置、一种电子设备和一种计算机可读介质。

【技术实现步骤摘要】
消息队列监控方法、装置、电子设备和介质
本公开涉及计算机
,更具体地,涉及一种消息队列监控方法、一种消息队列监控装置、一种电子设备和一种计算机可读介质。
技术介绍
在安全软件的设计和实现中,报警功能是常见的功能之一,当异常事件发生时,需要对用户进行实时报警,以提醒用户处理。在相关技术中,针对消息队列深度的监控主要通过设定固定阈值的方式实现。例如,在单位时间段内,检测队列深度平均值高于所设定阈值,则进行报警。然后,根据一段时间的报警情况,人工调整阈值,以适应当前队列运行状态。在实现本专利技术构思的过程中,专利技术人发现相关技术中至少存在如下问题。设定固定阈值的方式进行报警往往是基于工作人员的历史经验设定监控阈值。然而,消息队列的深度受上下游系统运行状态(例如,上下游系统的调用请求量等)、系统自身性能(例如,内存、CUP、存储等)以及网络情况等因素的实时波动影响。设定固定阈值的方式难以达到实时监控的目的。阈值设定过低,易造成大量误警的“报警风暴”、浪费运维人力。阈值设定过高,则增加漏报风险。而根据历史经验频繁试错式的“优化”阈值,更无疑在丧失自动化监控有效性的同时,增大了系统运行风险。
技术实现思路
有鉴于此,本公开提供了一种消息队列监控方法、一种消息队列监控装置、一种电子设备和一种计算机可读介质。本公开的一个方面提供了一种消息队列监控方法,包括:获取监控数据,基于所述监控数据,确定所述消息队列的当前可承载量和下一时刻的预测深度值,基于所述消息队列的当前可承载量确定所述消息队列的报警阈值,以及在所述消息队列的下一时刻的预测深度值超过所述报警阈值的情况下,确定所述消息队列处于阻塞状态。根据本公开的实施例,所述方法还包括:在所述消息队列的下一时刻的预测深度值超过所述报警阈值的情况下,进行报警处理。根据本公开的实施例,所述方法还包括:在所述消息队列的下一时刻的预测深度值超过所述报警阈值的情况下,累加计数值,所述计数值表示所述消息队列的下一时刻的预测深度值连续超过所述报警阈值的累计次数,在所述计数值超过计数阈值的情况下,进行报警处理。根据本公开的实施例,所述基于所述监控数据,确定所述消息队列的当前可承载量和下一时刻的预测深度值,包括:将所述监控数据输入至经训练的神经网络中,得到所述消息队列的当前可承载量和下一时刻的预测深度值。根据本公开的实施例,所述方法还包括:获取历史数据,所述历史数据包括历史监控数据和与所述历史监控数据对应的可承载量和下一时刻的深度值,基于所述历史数据,训练所述神经网络。根据本公开的实施例,训练所述神经网络包括:基于弹性网络算法训练所述神经网络。根据本公开的实施例,所述方法还包括:基于熵的离散化方法对所述历史数据进行离散处理,得到离散化历史数据。所述基于所述历史数据,训练所述神经网络,包括:基于所述离散化历史数据,训练所述神经网络。根据本公开的实施例,所述基于所述离散化历史数据,训练所述神经网络,包括:获取多个时间点分别对应的离散化历史数据,基于各时间点的离散化历史数据确定各时间点的数据分组,基于预设时间段以及各时间点的数据分组,确定至少一个训练数据分组,使用所述至少一个训练数据分组训练所述神经网络。根据本公开的实施例,所述监控数据包括所述消息队列的当前队列深度值、所述消息队列的单位时间入队列量、所述消息队列的单位时间出队列量、所述消息队列所在磁盘空间使用率、CPU使用率、内存使用率、网络连通性和网络即时网速中的至少一个。根据本公开的实施例,所述获取监控数据包括通过日志收集系统采集操作系统日志、网络日志和应用日志中的至少一个。本公开的另一个方面提供了一种消息队列监控装置,该装置包括获取模块、第一确定模块、第二确定模块和第三确定模块。其中,获取模块用于获取监控数据。第一确定模块用于基于所述监控数据,确定所述消息队列的当前可承载量和下一时刻的预测深度值。第二确定模块用于基于所述消息队列的当前可承载量确定所述消息队列的报警阈值。第三确定模块用于在所述消息队列的下一时刻的预测深度值超过所述报警阈值的情况下,确定所述消息队列处于阻塞状态。根据本公开的实施例,所述装置还包括:第一报警模块,用于在所述消息队列的下一时刻的预测深度值超过所述报警阈值的情况下,进行报警处理。根据本公开的实施例,所述装置还包括:第二报警模块,用于在所述消息队列的下一时刻的预测深度值超过所述报警阈值的情况下,累加计数值,所述计数值表示所述消息队列的下一时刻的预测深度值连续超过所述报警阈值的累计次数;在所述计数值超过计数阈值的情况下,进行报警处理。根据本公开的实施例,所述基于所述监控数据,确定所述消息队列的当前可承载量和下一时刻的预测深度值,包括:将所述监控数据输入至经训练的神经网络中,得到所述消息队列的当前可承载量和下一时刻的预测深度值。根据本公开的实施例,所述装置还包括训练模块,用于获取历史数据,所述历史数据包括历史监控数据和与所述历史监控数据对应的可承载量和下一时刻的深度值,基于所述历史数据,训练所述神经网络。根据本公开的实施例,训练所述神经网络包括:基于弹性网络算法训练所述神经网络。根据本公开的实施例,所述装置还包括处理模块,用于基于熵的离散化方法对所述历史数据进行离散处理,得到离散化历史数据。所述基于所述历史数据,训练所述神经网络,包括:基于所述离散化历史数据,训练所述神经网络。根据本公开的实施例,所述基于所述离散化历史数据,训练所述神经网络,包括:获取多个时间点分别对应的离散化历史数据,基于各时间点的离散化历史数据确定各时间点的数据分组,基于预设时间段以及各时间点的数据分组,确定至少一个训练数据分组,使用所述至少一个训练数据分组训练所述神经网络。根据本公开的实施例,所述监控数据包括所述消息队列的当前队列深度值、所述消息队列的单位时间入队列量、所述消息队列的单位时间出队列量、所述消息队列所在磁盘空间使用率、CPU使用率、内存使用率、网络连通性和网络即时网速中的至少一个。根据本公开的实施例,所述获取监控数据包括通过日志收集系统采集操作系统日志、网络日志和应用日志中的至少一个。本公开的另一个方面提供了一种电子设备,包括:一个或多个处理器,存储器,用于存储一个或多个程序,其中,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现如上所述的方法。本公开的另一个方面提供了一种计算机可读存储介质,其上存储有可执行指令,该指令被处理器执行时使处理器实现如上所述的方法。本公开的另一方面提供了一种计算机程序,所述计算机程序包括计算机可执行指令,所述指令在被执行时用于实现如上所述的方法。附图说明通过以下参照附图对本公开实施例的描述,本公开的上述以及其他目的、特征和优点将更为清楚,在附图中:图1示意性示出了根据本公开实施例的可以应用消息队列监控方法的示例性系统架构;图2示意性示出了根据本公开实施例的消息队列监控方法本文档来自技高网...

【技术保护点】
1.一种消息队列监控方法,包括:/n获取监控数据;/n基于所述监控数据,确定所述消息队列的当前可承载量和下一时刻的预测深度值;/n基于所述消息队列的当前可承载量确定所述消息队列的报警阈值;以及/n在所述消息队列的下一时刻的预测深度值超过所述报警阈值的情况下,确定所述消息队列处于阻塞状态。/n

【技术特征摘要】
1.一种消息队列监控方法,包括:
获取监控数据;
基于所述监控数据,确定所述消息队列的当前可承载量和下一时刻的预测深度值;
基于所述消息队列的当前可承载量确定所述消息队列的报警阈值;以及
在所述消息队列的下一时刻的预测深度值超过所述报警阈值的情况下,确定所述消息队列处于阻塞状态。


2.根据权利要求1所述的方法,还包括:
在所述消息队列的下一时刻的预测深度值超过所述报警阈值的情况下,进行报警处理。


3.根据权利要求2所述的方法,还包括:
在所述消息队列的下一时刻的预测深度值超过所述报警阈值的情况下,累加计数值,所述计数值表示所述消息队列的下一时刻的预测深度值连续超过所述报警阈值的累计次数;
在所述计数值超过计数阈值的情况下,进行报警处理。


4.根据权利要求1所述的方法,其中,所述基于所述监控数据,确定所述消息队列的当前可承载量和下一时刻的预测深度值,包括:
将所述监控数据输入至经训练的神经网络中,得到所述消息队列的当前可承载量和下一时刻的预测深度值。


5.根据权利要求4所述的方法,还包括:
获取历史数据,所述历史数据包括历史监控数据和与所述历史监控数据对应的可承载量和下一时刻的深度值;
基于所述历史数据,训练所述神经网络。


6.根据权利要求5所述的方法,其中,训练所述神经网络包括:基于弹性网络算法训练所述神经网络。


7.根据权利要求5所述的方法,其中:
所述方法还包括:
基于熵的离散化方法对所述历史数据进行离散处理,得到离散化历史数据;
所述基于所述历史数据,训练所述神经网络,包括:
基于所述离散化历史数据,训练所述神经...

【专利技术属性】
技术研发人员:赵海龙王薇薇张寒刘颖
申请(专利权)人:中国工商银行股份有限公司
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1