CN110930110B - 分布式流程监控方法、装置、存储介质及电子设备 - Google Patents
分布式流程监控方法、装置、存储介质及电子设备 Download PDFInfo
- Publication number
- CN110930110B CN110930110B CN201911053940.6A CN201911053940A CN110930110B CN 110930110 B CN110930110 B CN 110930110B CN 201911053940 A CN201911053940 A CN 201911053940A CN 110930110 B CN110930110 B CN 110930110B
- Authority
- CN
- China
- Prior art keywords
- sub
- identification information
- determining
- target sub
- flow
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/10—Office automation; Time management
- G06Q10/103—Workflow collaboration or project management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/10—Office automation; Time management
- G06Q10/105—Human resources
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q40/00—Finance; Insurance; Tax strategies; Processing of corporate or income taxes
- G06Q40/12—Accounting
- G06Q40/125—Finance or payroll
Landscapes
- Business, Economics & Management (AREA)
- Engineering & Computer Science (AREA)
- Strategic Management (AREA)
- Human Resources & Organizations (AREA)
- Entrepreneurship & Innovation (AREA)
- Accounting & Taxation (AREA)
- General Physics & Mathematics (AREA)
- Marketing (AREA)
- Finance (AREA)
- Economics (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- Quality & Reliability (AREA)
- Tourism & Hospitality (AREA)
- Data Mining & Analysis (AREA)
- Operations Research (AREA)
- Development Economics (AREA)
- Technology Law (AREA)
- Debugging And Monitoring (AREA)
Abstract
本公开涉及一种分布式流程监控方法、装置、存储介质及电子设备,所述方法包括:向待监控的主流程对应的各个子流程***发送多个探测请求,其中,所述子流程***为属于所述主流程的子流程对应的***,各个所述探测请求分别采用各个子流程***对应的协议进行发送;根据接收到的响应于所述探测请求的响应信号,确定处于运行状态的目标子流程***;拦截所述目标子流程***的业务单据,其中,所述目标子流程***的业务单据中携带有处理所述业务单据的节点的节点标识信息;根据所述业务单据,确定所述目标子流程***中的流程运行状态。因此,可以实现对主流程流转过程中的流程运行状态的全面监控,同时,可以极大地降低人工修改的工作量,便于维护。
Description
技术领域
本公开涉及流程处理领域,具体地,涉及一种分布式流程监控方法、装置、存储介质及电子设备。
背景技术
随着企业信息化的不断深入,大型企业发多数都已经建立较完善的信息化***。现有企业中一般采用分布式流程结构,即由于历史原因,企业中不同的流程***的大多数是由不同的厂商构建的,因此一般是通过该不同流程***之间的流程串联以实现***整体流程的推动。现有技术中可以采用以下方式实现各个流程***之间的流程关联:
一种是可以通过主流程将各个子流程***进行串联,但在该方式中只对子流程***进行监控,并不能够监控到该子流程***内部的运行状态;另一种是通过修改每个子流程***的流程引擎,将每个子流程***的流程引擎的执行信息进行统一上报,进而对子流程***内部的运行状态进行监控,但是该种方式下需要修改所有子流程***的流程引擎,人工修改工作量大,并且每个子流程***都有其对应的编程语言以及协议等,修改以及维护的难度过大。
发明内容
本公开的目的是提供一种简捷且全面地分布式流程监控方法、装置、存储介质及电子设备。
为了实现上述目的,根据本公开的第一方面,提供一种分布式流程监控方法,所述方法包括:
向待监控的主流程对应的各个子流程***发送多个探测请求,其中,所述子流程***为属于所述主流程的子流程对应的***,各个所述探测请求分别采用各个子流程***对应的协议进行发送;
根据接收到的响应于所述探测请求的响应信号,确定处于运行状态的目标子流程***;
拦截所述目标子流程***的业务单据,其中,所述目标子流程***的业务单据中携带有处理所述业务单据的节点的节点标识信息;
根据所述业务单据,确定所述目标子流程***中的流程运行状态。
可选地,所述根据所述业务单据,确定所述目标子流程***中的流程运行状态,包括:
获取所述业务单据的单据标识信息;
将所述单据标识信息的第一预设范围内的信息确定为流程标识信息,并将与所述流程标识信息对应的流程确定为所述目标子流程***中处于运行状态的子流程;
将所述单据标识信息的第二预设范围内的信息确定为所述节点标识信息,并将与所述节点标识信息对应的节点确定为所述目标子流程***中处于运行状态的子节点。
可选地,所述根据所述业务单据,确定所述目标子流程***中的流程运行状态,包括:
获取所述业务单据的单据标识信息,以及所述目标子流程***对应的对比码,其中,所述单据标识信息和所述对比码均通过二进制数表示,所述对比码用于指示流程标识信息在所述单据标识信息中的位置;
根据所述对比码和所述单据标识信息,确定所述业务单据对应的流程标识信息,并将与所述流程标识信息对应的流程确定为所述目标子流程***中处于运行状态的子流程;
将所述单据标识信息中除所述流程标识信息之外的剩余信息确定为节点标识信息,并将与所述节点标识信息对应的节点确定为所述目标子流程***中处于运行状态的子节点。
可选地,同一协议对应的多个子流程***的探测请求通过不同的端口发送,所述根据接收到的响应于所述探测请求的响应信号,确定处于运行状态的目标子流程***,包括:
根据接收所述响应信号的端口的端口号和所述响应信号所响应的探测请求对应的协议,将与该端口号和该协议对应的子流程***确定为所述目标子流程***。
可选地,在所述根据接收到的响应于所述探测请求的响应信号,确定处于运行状态的目标子流程***的步骤之后,所述方法还包括:
间隔预设时段向所述目标子流程***以所述目标子流程***对应的协议发送探测请求;
在确定所述目标子流程***中的子流程运行结束时,若所述主流程中、所述目标子流程***存在下一子流程***,则采用所述下一子流程***对应的协议向所述下一子流程***发送探测请求。
根据本公开的第二方面,提供一种分布式流程监控装置,所述装置包括:
第一发送模块,用于向待监控的主流程对应的各个子流程***发送多个探测请求,其中,所述子流程***为属于所述主流程的子流程对应的***,各个所述探测请求分别采用各个子流程***对应的协议进行发送;
第一确定模块,用于根据接收到的响应于所述探测请求的响应信号,确定处于运行状态的目标子流程***;
拦截模块,用于拦截所述目标子流程***的业务单据,其中,所述目标子流程***的业务单据中携带有处理所述业务单据的节点的节点标识信息;
第二确定模块,用于根据所述业务单据,确定所述目标子流程***中的流程运行状态。
可选地,所述第二确定模块包括:
第一获取子模块,用于获取所述业务单据的单据标识信息;
第一确定子模块,用于将所述单据标识信息的第一预设范围内的信息确定为流程标识信息,并将与所述流程标识信息对应的流程确定为所述目标子流程***中处于运行状态的子流程;
第二确定子模块,用于将所述单据标识信息的第二预设范围内的信息确定为所述节点标识信息,并将与所述节点标识信息对应的节点确定为所述目标子流程***中处于运行状态的子节点。
可选地,所述第二确定模块包括:
第二获取子模块,用于获取所述业务单据的单据标识信息,以及所述目标子流程***对应的对比码,其中,所述单据标识信息和所述对比码均通过二进制数表示,所述对比码用于指示流程标识信息在所述单据标识信息中的位置;
第三确定子模块,用于根据所述对比码和所述单据标识信息,确定所述业务单据对应的流程标识信息,并将与所述流程标识信息对应的流程确定为所述目标子流程***中处于运行状态的子流程;
第四确定子模块,用于将所述单据标识信息中除所述流程标识信息之外的剩余信息确定为节点标识信息,并将与所述节点标识信息对应的节点确定为所述目标子流程***中处于运行状态的子节点。
可选地,同一协议对应的多个子流程***的探测请求通过不同的端口发送,所述第一确定模块用于:
根据接收所述响应信号的端口的端口号和所述响应信号所响应的探测请求对应的协议,将与该端口号和该协议对应的子流程***确定为所述目标子流程***。
可选地,所述装置还包括:
第二发送模块,用于在所述第一确定模块根据接收到的响应于所述探测请求的响应信号,确定处于运行状态的目标子流程***之后,间隔预设时段向所述目标子流程***以所述目标子流程***对应的协议发送探测请求;
第三发送模块,用于在确定所述目标子流程***中的子流程运行结束时,若所述主流程中、所述目标子流程***存在下一子流程***,则采用所述下一子流程***对应的协议向所述下一子流程***发送探测请求。
根据本公开的第三方面,提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述第一方面任一所述方法的步骤。
根据本公开的第四方面,提供一种电子设备,包括:
存储器,其上存储有计算机程序;
处理器,用于执行所述存储器中的所述计算机程序,以实现上述第一方面任一所述方法的步骤。
在上述技术方案中,通过向主流程对应的各个子流程***发送探测请求,从而可以根据响应信号,确定出该主流程中当前处于运行状态的子流程。之后,通过拦截该子流程***的业务单据,从而可以根据该业务单据确定出子流程***中的流程运行状态。因此,通过上述技术方案,不需要对子流程***的流程引擎进行修改,便可以实现各个分布式流程***之间的运行状态的反馈,既可以对子流程***进行监控,又可以对子流程***中的内部子节点运行状态进行监控,从而实现对主流程流转过程中的流程运行状态的全面监控,保证流程流转的安全性和可靠性。同时,该分布式流程监控方法可以极大地降低人工修改的工作量,同时便于***的整体修改和维护。
本公开的其他特征和优点将在随后的具体实施方式部分予以详细说明。
附图说明
附图是用来提供对本公开的进一步理解,并且构成说明书的一部分,与下面的具体实施方式一起用于解释本公开,但并不构成对本公开的限制。在附图中:
图1是一示例主流程、子流程及子节点的示意图。
图2是根据本公开的一种实施方式提供的分布式流程监控方法的流程图;
图3是根据本公开的一种实施方式提供的分布式流程监控装置的框图;
图4是根据一示例性实施例示出的一种电子设备的框图;
图5是根据一示例性实施例示出的一种电子设备的框图。
具体实施方式
以下结合附图对本公开的具体实施方式进行详细说明。应当理解的是,此处所描述的具体实施方式仅用于说明和解释本公开,并不用于限制本公开。
相关技术中,企业***中需要多个分布式的流程***间进行串联以实现***的整体流程。例如,如图1所示,***的整体流程(即,主流程)为一研发审批流程,该主流程下的每个节点为一子流程,并且各个子流程可能源于不同的流程***,例如,人力资源子流程属于人力资源管理***,财务子流程属于财务***,研发管理子流程属于研发管理***。
在根据相关技术中的方式对该研发审批流程进行监控,即确定当前流程的运行状态时,若通过背景技术中所述的第一种方式,则只能确定当前是哪个子流程处于运行状态,例如,可以确定出当前流程运行至人力资源子流程,但是不能准确地监控人力资源子流程的运行状态,如不能确定当前子流程运行至申请人节点。若通过背景技术中所述的第二种方式,则需要重新修改人力资源管理***、财务***、研发管理***的流程引擎,工作量大且难以维护。
基于此,本公开提供一种分布式流程监控方法,该方法既不需要对流程***的流程引擎进行修改,还可以明确地监控子流程内部的运行状态。
图2所示,为根据本公开的一种实施方式提供的分布式流程监控方法的流程图,所述方法包括:
在S11中,向待监控的主流程对应的各个子流程***发送多个探测请求,其中,所述子流程***为属于所述主流程的子流程对应的***,各个所述探测请求分别采用各个子流程***对应的协议进行发送。
其中,如图1所示,该主流程对应的各个子流程***为人力资源管理***,财务***和研发管理***。各个子流程***可能是通过不同的厂商构建的,则在构建***时所使用的协议不同。示例地,人力资源管理***采用a协议,财务***采用b协议,研发管理***采用c协议。因此,在发送探测请求时,可以分别采用a、b、c协议向人力资源管理***发送探测请求,以及分别采用a、b、c协议向财务***发送探测请求,向其他子流程***发送探测请求的方式类似,在此不再赘述。
在S12中,根据接收到的响应于探测请求的响应信号,确定处于运行状态的目标子流程***。
其中,若该子流程***处于运行状态,则在子流程***接收到探测请求时,该子流程***则可以针对采用其相同的协议发送的探测请求进行响应,即反馈该响应信号,可以根据该响应信息确定出与该响应信号对应的子流程***,从而确定出处于运行状态的目标子流程***。
在S13中,拦截目标子流程***的业务单据,其中,所述目标子流程***的业务单据中携带有处理所述业务单据的节点的节点标识信息。
其中,在流程的流转过程中,该流程中的每个节点都可以挂接业务单据,该业务单据可以是统一格式的业务单据或是该流程已有的业务单据,本公开对此不进行限定。
示例地,在主流程中,可以设置该主流程中的各个子流程的节点的节点标识信息,并将节点的节点标识信息发送至该节点所在子流程***。因此,在子流程***中、子流程的某一节点处于运行状态(即,处理业务单据)时,可以在业务单据的单据标识信息中添加该节点的节点标识信息。示例地,可以将节点标识信息以后缀的方式添加至单据标识信息中,例如单据标识信息为“URL?Code=111012”,其中,“Code=111012”为节点标识信息。
在S14中,根据业务单据,确定目标子流程***中的流程运行状态。
其中,目标子流程***中的流程运行状态可以是确定目标子流程***中当前子流程运行到哪个节点,即确定出目标子流程***中处于运行状态的节点。业务单据中携带有处理该业务单据的节点的节点标识信息,从而可以在拦截到该业务单据时,确定出处理该业务单据的节点,该节点即为目标子流程***中当前处于运行状态的节点,从而可以确定出目标子流程***中的流程运行状态。
在上述技术方案中,通过向主流程对应的各个子流程***发送探测请求,从而可以根据响应信号,确定出该主流程中当前处于运行状态的子流程。之后,通过拦截该子流程***的业务单据,从而可以根据该业务单据确定出子流程***中的流程运行状态。因此,通过上述技术方案,不需要对子流程***的流程引擎进行修改,便可以实现各个分布式流程***之间的运行状态的反馈,既可以对子流程***进行监控,又可以对子流程***中的内部子节点运行状态进行监控,从而实现对主流程流转过程中的流程运行状态的全面监控,保证流程流转的安全性和可靠性。同时,该分布式流程监控方法可以极大地降低人工修改的工作量,同时便于***的整体修改和维护。
可选地,在S14中,根据业务单据,确定目标子流程***中的流程运行状态的一种示例性实施例如下,包括:
获取所述业务单据的单据标识信息,其中,单据标识信息可以是单据的编号或URL等。
将所述单据标识信息的第一预设范围内的信息确定为流程标识信息,并将与所述流程标识信息对应的流程确定为所述目标子流程***中处于运行状态的子流程;
将所述单据标识信息的第二预设范围内的信息确定为所述节点标识信息,并将与所述节点标识信息对应的节点确定为所述目标子流程***中处于运行状态的子节点。其中,该第一预设范围和第二预设范围为在主流程初始化时设置的。
示例地,单据标识信息可以是该业务单据的编号,流程标识信息可以为流程的编号,节点标识信息可以为节点的编号。在该实施例中,可以预先设置业务单据的编号中的哪几位表示流程的编号,哪几位表示节点的编号。例如,预先设置业务单据的编号为16位,其中,前8位表示子流程的编号,后8位表示子节点的编号。作为示例,业务单据的编号为0100361111110111,则,可以将01003611(前8位)确定为子流程的编号,将111110111(后8位)确定为子节点的编号。
由此,在根据单据标识信息确定出子流程的编号和子节点的编号后,则可以确定出目标子流程***中、编号为01003611的子流程(如图1中的人力资源子流程)中编号为111110111的节点(如图1中的申请人节点)处于运行状态,从而可以对分布式流程进行全面且精确地监控,同时可以为流程的安全流转及错误追溯提供准确的数据支持。
然而,在不同的流程***中,其包含的子流程的个数以及每个子流程中的子节点的个数可能差距较大,例如,流程***M中的子流程个数较多,每个子流程中的子节点的个数较少,流程***N中的子流程个数较少,每个子流程中的子节点的个数较多。这种情况下通过预先设置的子流程的编号和子节点的编号在单据的编号中对应的位数,可能会出现子流程的编号不足或者子节点的编号不足的现象。
可选地,在S14中,根据业务单据,确定目标子流程***中的流程运行状态的另一示例性实施例如下,包括:
获取所述业务单据的单据标识信息,以及所述目标子流程***对应的对比码,其中,所述单据标识信息和所述对比码均通过二进制数表示,所述对比码用于指示流程标识信息在所述单据标识信息中的位置。
其中,对比码中“1”的位置表示为流程标识信息在单据标识信息中的位置。示例地,流程***M对应的对比码M1可以为1111111111000000,流程***N对应的对比码N1可以表示为1111110000000000,即,流程***M中,前10位为流程标识信息,流程***N中,前6位为流程标识信息。因此,可以通过设置对比码的方式动态调整流程标识信息的位数,以适应流程***中子流程以及子节点的数量。
根据所述对比码和所述单据标识信息,确定所述业务单据对应的流程标识信息,并将与所述流程标识信息对应的流程确定为所述目标子流程***中处于运行状态的子流程。
将所述单据标识信息中除所述流程标识信息之外的剩余信息确定为节点标识信息,并将与所述节点标识信息对应的节点确定为所述目标子流程***中处于运行状态的子节点。
其中,可以将对比码和单据标识信息进行与运算,以确定所述业务单据对应的流程标识信息。示例地,将单据标识信息中与该对比码的“1”位置进行与操作获得的结果确定为流程标识信息,例如,单据标识信息为0100101111110111,流程***M对应的对比码M1为1111111111000000,则通过将单据标识信息和对比码进行与运算,如下:
0100101111110111&1111111111000000->0100101111000000
其中,与该对比码的“1”位置进行与操作获得的结果0100101111(即,单据标识信息的前10位),则流程***M处于运行状态的子流程的流程标识信息为0100101111,则单据标识信息中剩余信息为110111,即目标子流程***中处于运行状态的子节点的节点标识信息为110111。
流程***N对应的对比码N1可以表示为“1111110000000000”,则流程***N中:
0100101111110111&1111110000000000->0100100000000000
其中,与该对比码的“1”位置进行与操作获得的结果010010(即,单据标识信息的前6位),则流程***N处于运行状态的子流程的流程标识信息为010010,则单据标识信息中剩余信息为1111110111,即目标子流程***中处于运行状态的子节点的节点标识信息为1111110111。
因此,通过上述技术方案,可以通过流程***的对比码动态调整流程标识信息和节点标识信息的位数,以适应流程***中子流程以及子节点的数量,一方面可以针对不同的流程***对流程标识信息的位数进行不同的管理,另一方面也可以简捷、准确地确定出流程标识信息和节点标识信息,从而可以提高分布式流程监控的效率和准确性。另外,也可以有效拓宽分布式流程监控方法的适用范围。
可选地,在根据业务单据确定出流程标识信息和节点标识信息后,可以将确定出的上述标识信息进行存储,如存储至日志文件,从而可以在主流程流转的过程中生成流程节点流转的记录,便于进行流程状态查询,并为流程节点回溯提供数据支持。
可选地,如上文所述,各个子流程***可能对应于不同的协议。在子流程***对应的协议相同时,仅根据反馈有响应信号的探测请求对应的协议确定目标子流程***,难以准确地确定出该目标子流程***。因此,本公开还提供以下实施例。具体地,同一协议对应的多个子流程***的探测请求通过不同的端口发送,所述根据接收到的响应于所述探测请求的响应信号,确定处于运行状态的目标子流程***,包括:
根据接收所述响应信号的端口的端口号和所述响应信号所响应的探测请求对应的协议,将与该端口号和该协议对应的子流程***确定为所述目标子流程***。
示例地,子流程***S和子流程***T对应相同的协议,如人力资源管理***和后勤管理***对应相同的协议a,则可以分别设置人力资源管理***和后勤管理***发送探测请求的端口,示例地,设置人力资源管理***的探测请求通过端口8080进行发送,设置后勤管理***的探测请求通过端口8081进行发送。因此,人力资源管理***的响应信号通过端口8080接收,后勤管理***的响应信号通过端口8081接收,因此,在根据响应信号确定目标子流程***时,可以通过接收响应信号的端口号以区分采用同一协议的子流程***,如,通过端口8080接收的协议a的响应信号为该人力资源管理***的响应信号,从而可以根据响应信号对应的协议以及接收响应信号的端口的端口号唯一确定出目标子流程***,从而可以有效保证确定出的目标子流程***的准确性,以保证分布式流程监控的准确性。
可选地,在所述根据接收到的响应于所述探测请求的响应信号,确定处于运行状态的目标子流程***的步骤之后,所述方法还包括:
间隔预设时段向所述目标子流程***以所述目标子流程***对应的协议发送探测请求。
在一实施例中,在确定出目标子流程***后,即已经确定出当前处于运行状态的目标子流程***,则在后续对该目标子流程***的流程监控的过程中,只需要间隔预设时段以该目标子流程***对应的协议向该目标子流程***发送探测请求以确定该目标子流程***是否仍处于运行状态,从而可以有效降低探测请求发送的数量,从而可以有效降低数据传输量,进而提高数据处理效率。示例地,预设时段可以根据实际使用场景进行设置,如1s,本公开对此不进行限定。
在确定所述目标子流程***中的子流程运行结束时,若所述主流程中、所述目标子流程***存在下一子流程***,则采用所述下一子流程***对应的协议向所述下一子流程***发送探测请求,其中,所述下一子流程***则为所述目标子流程***在流程流转顺序上的下一级流程***。
作为示例,若在向目标子流程***发送探测请求后的一时段内,未接收到该目标子流程***反馈的响应信号,则可以确定该目标子流程***中的子流程运行结束。作为另一示例,响应信号中可以携带有目标子流程***中的子流程的开始时间标识信息和结束时间标识信息,则在接收到的响应信号中包含结束时间标识信息时,可以确定该目标子流程***中的子流程运行结束。
其中,在目标子流程***中的子流程运行结束后,若所述主流程中、所述目标子流程***存在下一子流程***,则表示当前主流程尚未运行结束,则采用所述下一子流程***对应的协议向所述下一子流程***发送探测请求,以对下一子流程***的流程运行状态进行监控。若所述主流程中、所述目标子流程***不存在下一子流程***,则可以主流程运行至结束节点,此时执行与该节点相应的操作,该部分处理方式为现有技术,在此不再赘述。
在上述技术方案中,在确定出目标子流程***,则可以针对目标子流程***发送探测请求以对流程运行状态进行监控,一方面可以避免发送过多无用的探测请求造成的资源浪费,另一方面又可以对目标子流程***进行全面的监控。另外,也可以在目标子流程***中的子流程运行结束后,对主流程中目标子流程***的下一子流程***进行监控,从而实现对主流程中各个子流程及子节点运行状态的监控,从而可以实时确定出主流程中的各节点的运行状态,进一步提高流程流转的安全性。
本公开还提供一种分布式流程监控装置,如图3所示,所述装置10包括:
第一发送模块100,用于向待监控的主流程对应的各个子流程***发送多个探测请求,其中,所述子流程***为属于所述主流程的子流程对应的***,各个所述探测请求分别采用各个子流程***对应的协议进行发送;
第一确定模块200,用于根据接收到的响应于所述探测请求的响应信号,确定处于运行状态的目标子流程***;
拦截模块300,用于拦截所述目标子流程***的业务单据,其中,所述目标子流程***的业务单据中携带有处理所述业务单据的节点的节点标识信息;
第二确定模块400,用于根据所述业务单据,确定所述目标子流程***中的流程运行状态。
可选地,所述第二确定模块包括:
第一获取子模块,用于获取所述业务单据的单据标识信息;
第一确定子模块,用于将所述单据标识信息的第一预设范围内的信息确定为流程标识信息,并将与所述流程标识信息对应的流程确定为所述目标子流程***中处于运行状态的子流程;
第二确定子模块,用于将所述单据标识信息的第二预设范围内的信息确定为所述节点标识信息,并将与所述节点标识信息对应的节点确定为所述目标子流程***中处于运行状态的子节点。
可选地,所述第二确定模块包括:
第二获取子模块,用于获取所述业务单据的单据标识信息,以及所述目标子流程***对应的对比码,其中,所述单据标识信息和所述对比码均通过二进制数表示,所述对比码用于指示流程标识信息在所述单据标识信息中的位置;
第三确定子模块,用于根据所述对比码和所述单据标识信息,确定所述业务单据对应的流程标识信息,并将与所述流程标识信息对应的流程确定为所述目标子流程***中处于运行状态的子流程;
第四确定子模块,用于将所述单据标识信息中除所述流程标识信息之外的剩余信息确定为节点标识信息,并将与所述节点标识信息对应的节点确定为所述目标子流程***中处于运行状态的子节点。
可选地,同一协议对应的多个子流程***的探测请求通过不同的端口发送,所述第一确定模块用于:
根据接收所述响应信号的端口的端口号和所述响应信号所响应的探测请求对应的协议,将与该端口号和该协议对应的子流程***确定为所述目标子流程***。
可选地,所述装置还包括:
第二发送模块,用于在所述第一确定模块根据接收到的响应于所述探测请求的响应信号,确定处于运行状态的目标子流程***之后,间隔预设时段向所述目标子流程***以所述目标子流程***对应的协议发送探测请求;
第三发送模块,用于在确定所述目标子流程***中的子流程运行结束时,若所述主流程中、所述目标子流程***存在下一子流程***,则采用所述下一子流程***对应的协议向所述下一子流程***发送探测请求。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
图4是根据一示例性实施例示出的一种电子设备700的框图。如图4所示,该电子设备700可以包括:处理器701,存储器702。该电子设备700还可以包括多媒体组件703,输入/输出(I/O)接口704,以及通信组件705中的一者或多者。
其中,处理器701用于控制该电子设备700的整体操作,以完成上述的分布式流程监控方法中的全部或部分步骤。存储器702用于存储各种类型的数据以支持在该电子设备700的操作,这些数据例如可以包括用于在该电子设备700上操作的任何应用程序或方法的指令,以及应用程序相关的数据,例如联系人数据、收发的消息、图片、音频、视频等等。该存储器702可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,例如静态随机存取存储器(Static Random Access Memory,简称SRAM),电可擦除可编程只读存储器(Electrically Erasable Programmable Read-Only Memory,简称EEPROM),可擦除可编程只读存储器(Erasable Programmable Read-Only Memory,简称EPROM),可编程只读存储器(Programmable Read-Only Memory,简称PROM),只读存储器(Read-Only Memory,简称ROM),磁存储器,快闪存储器,磁盘或光盘。多媒体组件703可以包括屏幕和音频组件。其中屏幕例如可以是触摸屏,音频组件用于输出和/或输入音频信号。例如,音频组件可以包括一个麦克风,麦克风用于接收外部音频信号。所接收的音频信号可以被进一步存储在存储器702或通过通信组件705发送。音频组件还包括至少一个扬声器,用于输出音频信号。I/O接口704为处理器701和其他接口模块之间提供接口,上述其他接口模块可以是键盘,鼠标,按钮等。这些按钮可以是虚拟按钮或者实体按钮。通信组件705用于该电子设备700与其他设备之间进行有线或无线通信。无线通信,例如Wi-Fi,蓝牙,近场通信(Near FieldCommunication,简称NFC),2G、3G、4G、NB-IOT、eMTC、或其他5G等等,或它们中的一种或几种的组合,在此不做限定。因此相应的该通信组件705可以包括:Wi-Fi模块,蓝牙模块,NFC模块等等。
在一示例性实施例中,电子设备700可以被一个或多个应用专用集成电路(Application Specific Integrated Circuit,简称ASIC)、数字信号处理器(DigitalSignal Processor,简称DSP)、数字信号处理设备(Digital Signal Processing Device,简称DSPD)、可编程逻辑器件(Programmable Logic Device,简称PLD)、现场可编程门阵列(Field Programmable Gate Array,简称FPGA)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述的分布式流程监控方法。
在另一示例性实施例中,还提供了一种包括程序指令的计算机可读存储介质,该程序指令被处理器执行时实现上述的分布式流程监控方法的步骤。例如,该计算机可读存储介质可以为上述包括程序指令的存储器702,上述程序指令可由电子设备700的处理器701执行以完成上述的分布式流程监控方法。
图5是根据一示例性实施例示出的一种电子设备1900的框图。例如,电子设备1900可以被提供为一服务器。参照图5,电子设备1900包括处理器1922,其数量可以为一个或多个,以及存储器1932,用于存储可由处理器1922执行的计算机程序。存储器1932中存储的计算机程序可以包括一个或一个以上的每一个对应于一组指令的模块。此外,处理器1922可以被配置为执行该计算机程序,以执行上述的分布式流程监控方法。
另外,电子设备1900还可以包括电源组件1926和通信组件1950,该电源组件1926可以被配置为执行电子设备1900的电源管理,该通信组件1950可以被配置为实现电子设备1900的通信,例如,有线或无线通信。此外,该电子设备1900还可以包括输入/输出(I/O)接口1958。电子设备1900可以操作基于存储在存储器1932的操作***,例如WindowsServerTM,Mac OS XTM,UnixTM,LinuxTM等等。
在另一示例性实施例中,还提供了一种包括程序指令的计算机可读存储介质,该程序指令被处理器执行时实现上述的分布式流程监控方法的步骤。例如,该计算机可读存储介质可以为上述包括程序指令的存储器1932,上述程序指令可由电子设备1900的处理器1922执行以完成上述的分布式流程监控方法。
在另一示例性实施例中,还提供一种计算机程序产品,该计算机程序产品包含能够由可编程的装置执行的计算机程序,该计算机程序具有当由该可编程的装置执行时用于执行上述的分布式流程监控方法的代码部分。
以上结合附图详细描述了本公开的优选实施方式,但是,本公开并不限于上述实施方式中的具体细节,在本公开的技术构思范围内,可以对本公开的技术方案进行多种简单变型,这些简单变型均属于本公开的保护范围。
另外需要说明的是,在上述具体实施方式中所描述的各个具体技术特征,在不矛盾的情况下,可以通过任何合适的方式进行组合。为了避免不必要的重复,本公开对各种可能的组合方式不再另行说明。
此外,本公开的各种不同的实施方式之间也可以进行任意组合,只要其不违背本公开的思想,其同样应当视为本公开所公开的内容。
Claims (10)
1.一种分布式流程监控方法,其特征在于,所述方法包括:
向待监控的主流程对应的各个子流程***发送多个探测请求,其中,所述子流程***为属于所述主流程的子流程对应的***,各个所述探测请求分别采用各个子流程***对应的协议进行发送;
根据接收到的响应于所述探测请求的响应信号,确定处于运行状态的目标子流程***;
拦截所述目标子流程***的业务单据,其中,所述目标子流程***的业务单据中携带有处理所述业务单据的节点的节点标识信息;
根据所述业务单据,确定所述目标子流程***中的流程运行状态。
2.根据权利要求1所述的方法,其特征在于,所述根据所述业务单据,确定所述目标子流程***中的流程运行状态,包括:
获取所述业务单据的单据标识信息;
将所述单据标识信息的第一预设范围内的信息确定为流程标识信息,并将与所述流程标识信息对应的流程确定为所述目标子流程***中处于运行状态的子流程;
将所述单据标识信息的第二预设范围内的信息确定为所述节点标识信息,并将与所述节点标识信息对应的节点确定为所述目标子流程***中处于运行状态的子节点。
3.根据权利要求1所述的方法,其特征在于,所述根据所述业务单据,确定所述目标子流程***中的流程运行状态,包括:
获取所述业务单据的单据标识信息,以及所述目标子流程***对应的对比码,其中,所述单据标识信息和所述对比码均通过二进制数表示,所述对比码用于指示流程标识信息在所述单据标识信息中的位置;
根据所述对比码和所述单据标识信息,确定所述业务单据对应的流程标识信息,并将与所述流程标识信息对应的流程确定为所述目标子流程***中处于运行状态的子流程;
将所述单据标识信息中除所述流程标识信息之外的剩余信息确定为节点标识信息,并将与所述节点标识信息对应的节点确定为所述目标子流程***中处于运行状态的子节点。
4.根据权利要求1所述的方法,其特征在于,同一协议对应的多个子流程***的探测请求通过不同的端口发送,所述根据接收到的响应于所述探测请求的响应信号,确定处于运行状态的目标子流程***,包括:
根据接收所述响应信号的端口的端口号和所述响应信号所响应的探测请求对应的协议,将与该端口号和该协议对应的子流程***确定为所述目标子流程***。
5.根据权利要求1所述的方法,其特征在于,在所述根据接收到的响应于所述探测请求的响应信号,确定处于运行状态的目标子流程***的步骤之后,所述方法还包括:
间隔预设时段向所述目标子流程***以所述目标子流程***对应的协议发送探测请求;
在确定所述目标子流程***中的子流程运行结束时,若所述主流程中、所述目标子流程***存在下一子流程***,则采用所述下一子流程***对应的协议向所述下一子流程***发送探测请求。
6.一种分布式流程监控装置,其特征在于,所述装置包括:
第一发送模块,用于向待监控的主流程对应的各个子流程***发送多个探测请求,其中,所述子流程***为属于所述主流程的子流程对应的***,各个所述探测请求分别采用各个子流程***对应的协议进行发送;
第一确定模块,用于根据接收到的响应于所述探测请求的响应信号,确定处于运行状态的目标子流程***;
拦截模块,用于拦截所述目标子流程***的业务单据,其中,所述目标子流程***的业务单据中携带有处理所述业务单据的节点的节点标识信息;
第二确定模块,用于根据所述业务单据,确定所述目标子流程***中的流程运行状态。
7.根据权利要求6所述的装置,其特征在于,所述第二确定模块包括:
第一获取子模块,用于获取所述业务单据的单据标识信息;
第一确定子模块,用于将所述单据标识信息的第一预设范围内的信息确定为流程标识信息,并将与所述流程标识信息对应的流程确定为所述目标子流程***中处于运行状态的子流程;
第二确定子模块,用于将所述单据标识信息的第二预设范围内的信息确定为所述节点标识信息,并将与所述节点标识信息对应的节点确定为所述目标子流程***中处于运行状态的子节点。
8.根据权利要求6所述的装置,其特征在于,所述第二确定模块包括:
第二获取子模块,用于获取所述业务单据的单据标识信息,以及所述目标子流程***对应的对比码,其中,所述单据标识信息和所述对比码均通过二进制数表示,所述对比码用于指示流程标识信息在所述单据标识信息中的位置;
第三确定子模块,用于根据所述对比码和所述单据标识信息,确定所述业务单据对应的流程标识信息,并将与所述流程标识信息对应的流程确定为所述目标子流程***中处于运行状态的子流程;
第四确定子模块,用于将所述单据标识信息中除所述流程标识信息之外的剩余信息确定为节点标识信息,并将与所述节点标识信息对应的节点确定为所述目标子流程***中处于运行状态的子节点。
9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现权利要求1-5中任一项所述方法的步骤。
10.一种电子设备,其特征在于,包括:
存储器,其上存储有计算机程序;
处理器,用于执行所述存储器中的所述计算机程序,以实现权利要求1-5中任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911053940.6A CN110930110B (zh) | 2019-10-31 | 2019-10-31 | 分布式流程监控方法、装置、存储介质及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911053940.6A CN110930110B (zh) | 2019-10-31 | 2019-10-31 | 分布式流程监控方法、装置、存储介质及电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110930110A CN110930110A (zh) | 2020-03-27 |
CN110930110B true CN110930110B (zh) | 2022-06-07 |
Family
ID=69850063
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911053940.6A Active CN110930110B (zh) | 2019-10-31 | 2019-10-31 | 分布式流程监控方法、装置、存储介质及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110930110B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111626602B (zh) * | 2020-05-25 | 2023-08-01 | 泰康保险集团股份有限公司 | 业务处理方法、业务处理装置、存储介质与电子设备 |
CN112148732A (zh) * | 2020-08-24 | 2020-12-29 | 北京来也网络科技有限公司 | 结合rpa和ai的智能电网电子化移交单监控方法和装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105335821A (zh) * | 2015-10-18 | 2016-02-17 | 广州赛意信息科技有限公司 | 基于融合多个***流程集中处理的方法 |
CN106651301A (zh) * | 2016-11-29 | 2017-05-10 | 东软集团股份有限公司 | 流程监控的方法及装置 |
CN107958021A (zh) * | 2017-10-27 | 2018-04-24 | 东软集团股份有限公司 | 业务流程数据的处理方法、装置、存储介质及设备 |
CN110288255A (zh) * | 2019-06-28 | 2019-09-27 | 深圳前海微众银行股份有限公司 | 一种分布式事务的流程保障方法及装置 |
-
2019
- 2019-10-31 CN CN201911053940.6A patent/CN110930110B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105335821A (zh) * | 2015-10-18 | 2016-02-17 | 广州赛意信息科技有限公司 | 基于融合多个***流程集中处理的方法 |
CN106651301A (zh) * | 2016-11-29 | 2017-05-10 | 东软集团股份有限公司 | 流程监控的方法及装置 |
CN107958021A (zh) * | 2017-10-27 | 2018-04-24 | 东软集团股份有限公司 | 业务流程数据的处理方法、装置、存储介质及设备 |
CN110288255A (zh) * | 2019-06-28 | 2019-09-27 | 深圳前海微众银行股份有限公司 | 一种分布式事务的流程保障方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN110930110A (zh) | 2020-03-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108566290B (zh) | 服务配置管理方法、***、存储介质和服务器 | |
JP6325001B2 (ja) | 階層データ構造のノードにおいて再帰的イベントリスナを用いる方法およびシステム | |
CN112534432A (zh) | 不熟悉威胁场景的实时缓解 | |
US9929930B2 (en) | Reducing an amount of captured network traffic data to analyze | |
WO2016062011A1 (zh) | 告警处理方法及装置 | |
CN105052076B (zh) | 一种基于云计算的网元管理***及网元管理方法 | |
CN110166562B (zh) | 数据同步的方法、装置、存储介质和电子设备 | |
CN110930110B (zh) | 分布式流程监控方法、装置、存储介质及电子设备 | |
WO2019075845A1 (zh) | 链路调用关系的构建方法、装置、计算机设备及存储介质 | |
CN111770174A (zh) | 一种云平台部署方法、装置、设备及可读存储介质 | |
US11599519B2 (en) | Method, electronic device and computer program product for data management | |
US10205767B2 (en) | Management system and method for a big data processing device | |
CN112087475B (zh) | 一种云平台组件应用的消息推送方法、装置及消息服务器 | |
CN108804574B (zh) | 告警提示方法、装置、计算机可读存储介质及电子设备 | |
CN109189403B (zh) | 操作***os批量安装方法、装置和网络设备 | |
US20190296960A1 (en) | System and method for event processing order guarantee | |
CN113791792A (zh) | 应用调用信息的获取方法、设备以及存储介质 | |
CN111190761B (zh) | 日志输出方法、装置、存储介质及电子设备 | |
CN113220342A (zh) | 中心化配置方法、装置、电子设备及存储介质 | |
CN110893616B (zh) | 一种远程控制方法、装置、计算机设备和存储介质 | |
CN110620695A (zh) | 一种数据处理方法及相关设备 | |
CN114567678B (zh) | 一种云安全服务的资源调用方法、装置及电子设备 | |
CN111080250B (zh) | 流程回退补偿方法、装置、存储介质及电子设备 | |
CN111917812B (zh) | 数据的传输控制方法、装置、设备以及存储介质 | |
CN107577546B (zh) | 一种信息处理方法、装置及电子设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |