一种可智能分发任务的高可用数据库监控方法

文档序号:10569820阅读:231来源:国知局
一种可智能分发任务的高可用数据库监控方法
【专利摘要】本发明公开了一种可智能分发任务的高可用数据库监控方法,包括以下步骤:步骤一、初始化待领取任务队列及请求消息队列的长度;步骤二、任务中心从任务定义池中获取任务定义,由任务生成控制器生成任务加入到待领取任务队列;步骤三、采集中心向任务中心发起请求信号,加入到请求消息队列中;步骤四、请求消息控制器监听请求消息队列,处理新加入的请求消息,向待领取任务队列发起请求并获取任务数据;步骤五、请求消息控制器把获取到的任务数据传输给任务分发控制器;步骤六、任务分发控制器接收到任务数据后,根据请求消息的上下文信息,将数据反馈给具体请求的采集服务器。
【专利说明】
一种可智能分发任务的高可用数据库监控方法
技术领域
[0001]本发明涉及数据库监控技术领域,特别适用于mysqUoracle等类型数据库分布式监控,具体是一种可智能分发任务的高可用数据库监控方法。
【背景技术】
[0002]近年来,随着互联网和移动网络的不断发展,互联网应用系统的数据量和访问并发数已经急剧增长。传统企业级数据库监控技术已经难以适应现在的系统需求,互联网技术正在朝着高并发、多维度、智能化等新架构方向发展。大规模互联网应用架构中,如何高效地监控各级数据库之间的数据互通和处理是一个重要的课题。

【发明内容】

[0003]为了解决现有技术中存在的上述技术问题,本发明提供了一种可智能分发任务的高可用数据库监控方法,其特征在于:包括以下步骤:
步骤一、初始化待领取任务队列及请求消息队列的长度;
步骤二、任务中心从任务定义池中获取任务定义,由任务生成控制器生成任务加入到待领取任务队列;
步骤三、采集中心向任务中心发起请求信号,加入到请求消息队列中;
步骤四、请求消息控制器监听请求消息队列,处理新加入的请求消息,向待领取任务队列发起请求并获取任务数据;
步骤五、请求消息控制器把获取到的任务数据传输给任务分发控制器;
步骤六、任务分发控制器接收到任务数据后,根据请求消息的上下文信息,将数据反馈给具体请求的采集服务器。
[0004]进一步的,还包括如下步骤:
步骤七、采集服务器接收到反馈的任务,加入到本地的任务队列中;
步骤八、本地任务控制器从任务队列中获取到最新的任务,加入到时间表中去,等待时间触发。
[0005]进一步的,还包括如下步骤:
步骤九、发起主线程的调度任务,并发起守护线程监听主线程,进行异常与超时控制;调度完成。
[0006]本发明还公开了一种执行上述的可智能分发任务的高可用数据库监控方法的系统,包括:采集中心,用于发起采集请求和接受采集任务,支持分布式;
任务分发控制器,用于任务分发,来保证任务的准确性和可用性;
任务定义池,存放等待执行的任务,防止任务丢失;
请求任务池,位于米集中心和任务定义池之间,用于任务的请求;
任务生成控制器,用于任务定义,将定义任务生成具体任务;
本地任务控制器,从采集中心的任务池中领取任务,并生成任务执行的主线程和守护线程。
[0007]本发明有如下有益效果:
1)采用高可用技术,避免采集服务出现挂起导致该节点的所有任务都挂起的问题;
2)采用了最少连接数算法实现负载均衡,解决了采集节点任务分布不均导致的节点负载差异过大的问题;
3)改进了任务由各采集节点自动生成的机制,采用了由任务中心管理与分配的机制;
4)独创任务控制器系统和任务队列系统,解决了系统过高负载的问。
【附图说明】
[0008]图1是本发明的可智能分发任务的高可用数据库监控方法流程控制图。
【具体实施方式】
[0009]下面结合附图对本发明作进一步说明。
[0010]如图1所示,本发明使用的系统整体架构包括:采集中心,用于发起采集请求和接受采集任务,支持分布式;任务分发控制器,用于任务分发,来保证任务的准确性和可用性;任务定义池,存放等待执行的任务,防止任务丢失;请求任务池,位于米集中心和任务定义池之间,用于任务的请求;任务生成控制器,用于任务定义,将定义任务生成具体任务;本地任务控制器,从采集节点任务池中领取任务,并生成任务执行的主线程和守护线程。
[0011]本发明的可智能分发任务的高可用数据库监控方法,包括以下步骤:
初始化待领取任务队列及请求消息队列的长度;
任务中心从任务定义池中获取任务定义,由任务生成控制器生成任务加入到待领取任务队列;
采集中心向任务中心发起请求信号,加入到请求消息队列中;
请求消息控制器监听请求消息队列,处理新加入的请求消息,向待领取任务队列发起请求并获取任务数据;
请求消息控制器把获取到的任务数据传输给任务分发控制器;
任务分发控制器接收到任务数据后,根据请求消息的上下文信息,将数据反馈给具体请求的采集服务器;
采集服务器接收到反馈的任务,加入到本地的任务队列中;
本地任务控制器从任务队列中获取到最新的任务,加入到时间表中去,等待时间触发; 发起主线程的调度任务,并发起守护线程监听主线程,进行异常与超时控制;
调度完成。
[0012]以上所述及图中所示的仅是本发明的优选实施方式。应当指出,对于本领域的普通技术人员来说,在不脱离本发明的原理的前提下,还可以作出若干变型和改进,这些也应视为属于本发明的保护范围。
【主权项】
1.一种可智能分发任务的高可用数据库监控方法,其特征在于:包括以下步骤: 步骤一、初始化待领取任务队列及请求消息队列的长度; 步骤二、任务中心从任务定义池中获取任务定义,由任务生成控制器生成任务加入到待领取任务队列; 步骤三、采集中心向任务中心发起请求信号,加入到请求消息队列中; 步骤四、请求消息控制器监听请求消息队列,处理新加入的请求消息,向待领取任务队列发起请求并获取任务数据; 步骤五、请求消息控制器把获取到的任务数据传输给任务分发控制器; 步骤六、任务分发控制器接收到任务数据后,根据请求消息的上下文信息,将数据反馈给具体请求的采集服务器。2.如权利要求1所述的可智能分发任务的高可用数据库监控方法,其特征在于:还包括如下步骤: 步骤七、采集服务器接收到反馈的任务,加入到本地的任务队列中; 步骤八、本地任务控制器从任务队列中获取到最新的任务,加入到时间表中去,等待时间触发。3.如权利要求2所述的可智能分发任务的高可用数据库监控方法,其特征在于:还包括如下步骤: 步骤九、发起主线程的调度任务,并发起守护线程监听主线程,进行异常与超时控制;调度完成。4.一种执行权利要求1-3之一的可智能分发任务的高可用数据库监控方法的系统,包括:采集中心,用于发起采集请求和接受采集任务,支持分布式; 任务分发控制器,用于任务分发,来保证任务的准确性和可用性; 任务定义池,存放等待执行的任务,防止任务丢失; 请求任务池,位于米集中心和任务定义池之间,用于任务的请求; 任务生成控制器,用于任务定义,将定义任务生成具体任务; 本地任务控制器,从采集中心的任务池中领取任务,并生成任务执行的主线程和守护线程。
【文档编号】G06F9/48GK105930246SQ201610215413
【公开日】2016年9月7日
【申请日】2016年4月8日
【发明人】王宇
【申请人】天翼阅读文化传播有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1