一种业务进程的分布式分优先级监控方法

文档序号:7614893阅读:159来源:国知局
专利名称:一种业务进程的分布式分优先级监控方法
技术领域
本发明涉及一种计算机网络技术,尤其涉及的是一种对业务进程进行实时监控的方法。
背景技术
在一个电信通讯系统中,业务进程能否稳定可靠运行将直接影响到系统运行的可靠性、业务的准确性和实时性。
目前业务进程的监控方法大多集中在对单个节点运行的操作系统的进程、线程等运行环境的监控上,这些方法需要收集系统的CPU的利用率,内存的使用率,硬盘的状态,网络的状态等等信息。这些信息在一定程度反映了业务进程的运行是否正常,对于传统的监测方法,如华为技术有限公司在中国专利公开号为CN1494257A的专利文献中所提出的一种可以对计费服务器业务逻辑进行监测的方法,但是现有技术中在检测发现系统出现问题后,没有提出相应的解决方法。
当在发现业务进程出现异常后,目前大多数的方法是通过软件看门狗来杀掉进程并重新启动相应的进程来处理;但如果一个节点出现问题,即使重复启动节点后,也不能解决相应的问题。
因此,现有技术还有待于改进和发展。

发明内容
本发明的目的在于提供一种业务进程的分布式分优先级监控方法,通过分布在各个节点上的监控进程分优先级监控各个节点上的各个业务进程,极大的提高通讯系统的可靠性和稳定性。
本发明的技术方案如下一种业务进程的分布式分优先级监控方法,其通过分布在系统网络不同节点上的监控进程对系统中的本节点业务进程进行监控,所述方法并包括A、启动各节点上的监控进程,并对具有相同标识ID的业务进程的优先级进行判断,启动其优先级最高的业务进程;B、所述各节点彼此接收到对方的被监控的业务进程信息,并对相同标识ID的业务进程的优先级分别进行比较,以使在正常节点上的最高优先级的业务进程被启动。
所述的方法,其中,还包括所述各节点依次启动,并在本节点启动时在预定的探测其他节点信息的最大时间间隔范围内,对相同标识ID的业务进程的优先级进行比较。
所述的方法,其中,所述步骤B还包括在节点发生发生故障和其他节点的通讯中断时,其他可通讯的各节点对相同标识ID的业务进程优先级进行比较,并启动最高优先级的业务进程。
所述的方法,其中,所述步骤B还包括某一节点检测发现异常的业务进程时,该节点停止该标识ID的业务进程之运行,并把对应该标识ID业务进程的优先级降低到最低优先级并向其它节点发送当前节点的状态信息,其他节点比较该标识ID的业务进程优先级,并启动最高优先级的业务进程。
所述的方法,其中,所述异常的原因包括死循环,内存占用超过限定值,业务逻辑流程错误或内存访问越界。
所述的方法,其中,所述各节点的相同标识ID的业务进程,其优先级相同且为最高的同时启动。
本发明所提供的一种业务进程的分布式分优先级监控方法,与现有的技术相比,由于对系统中各个节点的业务进程采用了分布式按优先级的实时监控方法,在一个节点出现故障后,其它节点会立即接替它的工作;当其中一个节点的某个运行的业务进程业务逻辑错误时,停止这个节点上这个业务进程的运行,其它节点上相同标识的优先级最高的业务进程开始运行;通过采用分布式多节点分优先级共同监控,大大提高了系统运行的可靠性,稳定性,从而提高了业务的准确性和实时性。


图1为本发明方法的一较佳实施例的系统网络结构示意图;图2为本发明方法的系统中一个节点的工作流程示意图;图3为图1所示本发明方法的实施例的各个节点上业务进程数为3时的优先级表示意图。
具体实施例方式
以下结合附图,将对本发明的各较佳实施例进行较为详细的说明。
本发明的所述业务进程的分布式分优先级监控方法,其核心是通过分布在系统网络不同节点上的监控进程对系统中的业务进程进行监控,探测系统运行环境是否正常,并根据各个节点交互的信息控制每个节点上的业务进程。
本发明方法主要包括以下内容在每个节点上的监控进程可以监控一个以上的业务进程,业务进程配置为不同的优先级和标识ID。在同一节点上每个业务进程的标识ID不能相同,优先级可以相同。各个节点上的每个业务进程的优先级和标识ID可以相同也可以不同。设置时一般根据业务进程的重要性来设置优先级,越重要的进程优先级越高,也可以根据其他原则设置业务进程的优先级。一般不同节点上相同的业务进程配置为相同的标识ID。
所述监控进程监控业务进程的运行状况,和其他节点上的监控进程按照一定的周期相互交互业务进程的优先级和运行状态信息。它们彼此通信,构成了一个网状结构的通讯网络。
每个节点启动时,启动本节点上业务进程的先后顺序可以灵活配置,可以安照优先级的顺序启动,也可以按照其他的方法来启动。
所述监控进程和本节点上的业务进程交互信息,根据交互的信息,所述监控进程判断业务逻辑是否正确,如果业务逻辑不正确,则把这个业务进程的优先级降低为各个节点上同一标识ID业务进程中最低优先级的业务进程。
本发明方法中的每个节点接收到其他节点上监控进程发送过来的被监控业务进程的状态信息后,和本节点被监控业务进程的运行状态信息进行比较。当本节点的业务进程的标识ID和接收到的其他节点的标识ID相同时,如果本节点的优先级最高,并且没有启动这个业务进程,则启动本节点的这个业务进程;如果本节点的优先级最低,则停止本节点的这个业务进程;如果优先级和系统中相同标识ID的业务进程中最高优先级的业务进程相同,则不停止这个业务进程,也可以根据其他原则进行配置来决定是否停止这个业务进程。
由于某种原因,本节点的监控进程如果在一定时间内接收不到其他节点监控进程发送过来的消息,监控进程认为其它节点出现故障,启动本节点监控的所有没有启动的业务进程;也可以按照配置的策略采用其他的处理方法。
如图1所示为本发明方法的各个节点组成的网状结构示意图,图中各个节点交互各节点上的控制信息;如图2所示为本发明方法系统中一个节点的工作流程图。它的工作流程按照如下的流程步骤执行S201.启动本节点的监控进程。
S202.启动定时器监控本节点业务进程的状态和接收其他节点发送的消息。
S204.根据监测的信息如cpu占用率是否很高,业务逻辑是否正确等等各种条件去判断本节点的业务进程和业务逻辑是否正常。如果有异常则执行步骤S205,否则执行步骤S206。
S205.如果其中的一个业务进程出现问题,则把这个业务进程的优先级降为低于各个节点上同一标识ID业务进程的最低优先级。
S206.等待本节点的定时器超时。
S207.定时时间到,判断是否接收到其他节点发送过来的消息,如果接收到其它节点发送来的消息,则执行步骤S208,否则执行步骤S203。
S203.如果没有接收到其他节点发送过来的信息,则认为其它节点没有启动或者有了问题,这时启动本节点配置的没有启动的其他业务进程;回到步骤S202。
S208.整理接收到的各个节点发送来的消息,比较各个节点的相同标识ID的业务进程的优先级。
S209.察看当前节点上所有运行的业务进程,看他们的优先级是否仍然是系统中相同标识ID的业务进程中优先级最高的业务进程;如果是则执行步骤S211,否则执行步骤S210。
S210.停止本节点这个标识ID的业务进程的运行,接着执行步骤S211。
S211.察看在本节点上,一个没有启动的业务进程的优先级是否变成系统中同一标识ID的业务进程中优先级最高的,如果是则执行步骤S212,否则返回到步骤S202,继续执行。
S212.启动本节点中变为系统中同一标识ID的业务进程中优先级最高的业务进程;返回到步骤S202继续执行。
下面再结合图3说明一下本发明方法在一个4个节点的系统中各个节点的相互作用关系。如图3所示,在本发明方法的这个实施例的系统中,每个节点配置了3个业务进程,各个节点上业务进程的优先级假设如图3表所示,当本系统中相同标识ID有两个或两个以上的进程的优先级相同并且为最高时,选择的策略为让最高优先级的进程共同运行,也可以按照其他的策略来决定如何运行系统中相同标识ID的两个或多个最高优先级的进程。系统中业务节点的个数,进程的优先级可以根据需要进行不同的配置。设定每一个节点探测其他节点的最大时常为2秒,优先级的值0为最大,255为最小优先级。这些参数也可以根据不同的需求设置其他的值。系统启动流程如下所述,系统中的各个节点可以一个接一个启动,也可以一起启动,为了描述的方便,下面说明一个接着一个启动的实施例首先启动节点A上的监控进程,因为在给定的时间内没有接收到其它节点发来的消息,启动节点A上的业务进程。
接着启动节点B上的监控进程,在给定的探测其他节点信息的最大时间间隔范围内节点A和节点B互相接收到对方的被监控的业务进程信息。节点B的监控进程用本机被监控进程的标识ID以及优先级和接收到的信息相比较,节点B标识ID为PROCESS1,PROCESS2的业务进程的优先级是当前所有节点中相同标识ID中优先级最低的,不启动他们。节点B上标识为PROCESS3的业务进程的优先级是当前运行节点中相同标识的业务进程中优先级最高的,启动B节点标识为PROCESS3的业务进程。节点A这个时候发现,他的标识ID为PROCESS3的业务进程的优先级现在已经不是系统中相同标识ID中最高的了,停止这个业务进程的运行。
然后启动节点C上的监控进程,在给定的探测其他节点信息的最大时间间隔范围内,节点A,节点B和节点C彼此接收到对方的被监控的业务进程信息。各个节点用自身的信息和接收到的信息相互比较。发现它们各自的业务进程的运行状态不需要改变。
启动节点D上的监控进程,在给定的探测其他节点信息的最大时间间隔范围内节点A,节点B,节点C和节点D彼此接收到对方的被监控的业务进程信息。各个节点进行比较发现各个节点的被监控的业务进程的运行状态不需要改变。
系统运行了一段时间后,由于某种原因,节点A发生故障和其他节点的通讯中断,节点B,节点C和节点D与节点A无法交互信息。节点B经过比较发现,本节点标识为PROCESS1业务进程的优先级为系统中相同标识业务进程优先级最高的,节点B启动标识为PROCESS1的进程。节点B和节点C都发现它的标识为PROCESS2的业务进程优先级相同,而且是系统中相同标识ID业务进程中最高的,根据配置的原则启动节点B和节点C上的标识为PROCESS2的业务进程。节点D经过比较,它们节点业务进程的优先级与其他节点比较没有发生优先级相对关系的改变,于是不改变业务进程的运行状态。
在发现节点A出现故障后,如果排除了故障并重新启动节点A和它上面的监控进程,这时由于节点A中标识为PROCESS1和PROCESS2的业务进程的优先级为系统中相同标识ID的业务进程中最高的,他们被启动运行。
节点B中标识为PROCESS1和PROCESS2的业务进程在系统中已经不是相同标识的业务进程中最高优先级的了,节点B即停止它们的运行。节点C中标识为PROCESS2的业务进程在系统中已经不是相同标识的业务进程中的最高优先级了,节点C也停止它的运行。节点D经过检查发现它的各个业务进程的优先级相对关系没有改变,因此不改变它的各个业务进程的运行状态。
在运行了一段时间后,节点A检测发现标识为PROCESS1的业务进程异常,异常的原因可能是死循环,内存占用超过限定值,业务逻辑流程错误,内存访问越界等等各种原因。这时节点A停止标识为pROCESS1的业务进程的运行,并且把PROCESS1的业务进程的优先级降低到最低优先级255并向其它节点发送当前节点的状态信息,节点B得到变化信息后,由于B节点标识为PROCESS1的业务进程的优先级当前为系统中优先级最高的,节点B启动标识为PROCESS1的业务进程。
本发明的业务进程的分布式分优先级监控方法,与现有的技术相比,由于对系统中各个节点的业务进程采用了分布式按优先级的实时监控方法,解决了传统监控领域采用看门狗不能解决的问题,在一个节点出现故障后,其它节点会立即接替它的工作;当其中一个节点的某个运行的业务进程业务逻辑错误时,停止这个节点上这个业务进程的运行,其它节点上相同标识的优先级最高的业务进程开始运行;通过采用分布式多节点分优先级共同监控,大大提高了系统运行的可靠性,稳定性,从而提高了业务的准确性和实时性。
但应当理解的是,上述针对本发明的较佳实施例的描述较为具体,并不能因此而理解为对本发明专利保护范围的限制,本发明的专利保护范围应以所附权利要求为准。
权利要求
1.一种业务进程的分布式分优先级监控方法,其通过分布在系统网络不同节点上的监控进程对系统中的本节点业务进程进行监控,所述方法并包括A、启动各节点上的监控进程,并对具有相同标识ID的业务进程的优先级进行判断,启动其优先级最高的业务进程;B、所述各节点彼此接收到对方的被监控的业务进程信息,并对相同标识ID的业务进程的优先级分别进行比较,以使在正常节点上的最高优先级的业务进程被启动。
2.根据权利要求1所述的方法,其特征在于,还包括所述各节点依次启动,并在本节点启动时在预定的探测其他节点信息的最大时间间隔范围内,对相同标识ID的业务进程的优先级进行比较。
3.根据权利要求1所述的方法,其特征在于,所述步骤B还包括在节点发生发生故障和其他节点的通讯中断时,其他可通讯的各节点对相同标识ID的业务进程优先级进行比较,并启动最高优先级的业务进程。
4.根据权利要求1所述的方法,其特征在于,所述步骤B还包括某一节点检测发现异常的业务进程时,该节点停止该标识ID的业务进程之运行,并把对应该标识ID业务进程的优先级降低到最低优先级并向其它节点发送当前节点的状态信息,其他节点比较该标识ID的业务进程优先级,并启动最高优先级的业务进程。
5.根据权利要求4所述的方法,其特征在于,所述异常的原因包括死循环,内存占用超过限定值,业务逻辑流程错误或内存访问越界。
6.根据权利要求1至5任意权项所述的方法,其特征在于,所述各节点的相同标识ID的业务进程,其优先级相同且为最高的同时启动。
全文摘要
本发明公开了一种业务进程的分布式分优先级监控方法,其通过分布在系统网络不同节点上的监控进程对系统中的本节点业务进程进行监控,所述方法并包括启动各节点上的监控进程,并对具有相同标识ID的业务进程的优先级进行判断,启动其优先级最高的业务进程;所述各节点彼此接收到对方的被监控的业务进程信息,并对相同标识ID的业务进程的优先级分别进行比较,以使在正常节点上的最高优先级的业务进程被启动。本发明方法由于对系统中各个节点的业务进程采用了分布式按优先级的实时监控方法,在一个节点或业务进程出现故障后,其它节点会立即接替,大大提高了系统运行的可靠性,稳定性,从而提高了业务的准确性和实时性。
文档编号H04L29/02GK1924810SQ20051003694
公开日2007年3月7日 申请日期2005年9月2日 优先权日2005年9月2日
发明者徐其龙, 李 浩 申请人:中兴通讯股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1