CN101477652A - 流程超时机制的实现方法 - Google Patents

流程超时机制的实现方法 Download PDF

Info

Publication number
CN101477652A
CN101477652A CNA2008102379623A CN200810237962A CN101477652A CN 101477652 A CN101477652 A CN 101477652A CN A2008102379623 A CNA2008102379623 A CN A2008102379623A CN 200810237962 A CN200810237962 A CN 200810237962A CN 101477652 A CN101477652 A CN 101477652A
Authority
CN
China
Prior art keywords
overtime
link
time
flow process
database table
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.)
Pending
Application number
CNA2008102379623A
Other languages
English (en)
Inventor
胡清
付金涛
李向阳
高峰
曹祥茂
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Inspur Software Co Ltd
Original Assignee
Langchao Qilu Software Industry Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Langchao Qilu Software Industry Co Ltd filed Critical Langchao Qilu Software Industry Co Ltd
Priority to CNA2008102379623A priority Critical patent/CN101477652A/zh
Publication of CN101477652A publication Critical patent/CN101477652A/zh
Pending legal-status Critical Current

Links

Landscapes

  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明提供一种流程超时机制的实现方法,该方法是使用数据库和独立线程检查执行两种技术的解决方案,***提供超时数据库表,流程或环节启动时,往超时表中增加一条记录,记录下该流程或环节将要超时的时间点,而在***外,提供一个独立的线程,每隔一段时间检查超时表中哪些流程或环节已经超时,超时的流程或环节执行相应的超时处理类,工作流只提供超时处理的实现接口,具体实现由二次开发人员根据业务需要去实现。本发明最大的优点是能有效保证超时业务的处理,并且超时业务的处理不会影响***的性能。

Description

流程超时机制的实现方法
技术领域
本发明涉及计算机应用领域,具体地说是工作流***中实现流程超时机制的实现方法。
背景技术
随着工作流技术的不断发展,工作流已广泛应用在办公、电子政务、电子商务等领域,越来越多的应用***已经把工作流***作为基础平台,处理内部办公、政务或企业的业务流程。工作流***不但要面向最终用户,已越来越多地成为一个二次开发平台,以满足不同业务的需求。
在办公***中,流程或环节超时,经常要求***发短信或发邮件来提示用户抓紧处理。
在电子政务审批类业务流程中,为了提高政府的办事效率,流程或环节需要设置限时时间,规定的时间内如果没有完成本环节或流程的任务处理,将会进行警告和考核。电子政务一般使用单独的电子监察***来监控政府的业务流程处理情况,电子监察***必须依赖于工作流***的流程超时机制。
企业的业务流程也经常要求流程或环节超时的时候,作一些业务上的操作。
因此,工作流***作为一个开发平台,必须提供流程或环节超时时的一个处理机制,超时时具体处理什么事情,由应用***二次开发人员去实现。
传统的流程超时机制实现方法:发起流程或环节时,发现该流程或环节设置了超时限制,启动一个定时器,该定时器是放在内存中,并作为一个独立的线程。流程或环节发起时间再加上流程或环节设置的时限就等于该定时器将要执行的时间点。如果到达了定时器执行的时间点,流程或环节还没有结束,定时器将会执行超时处理类,超时处理类由二次开发人员去实现。
传统方式的缺点是:
1)***断电或其它情况,导致原有运行时的内存数据丢失,存放在内存中定时器也将丢失。该定时器可能还没有到执行时间点,定时器丢失,将不会再执行超时处理类。
2)设置超时限制的流程或环节,每发起一个流程或环节都会启动一个定时器,每个定时器都是个独立的线程,***运行了一段时间后,可能发起了很多流程和环节,这样就会导致***中有大量的定时器线程存在,容易造成***阻塞,带来性能问题。
发明内容
本发明的目的是解决传统流程超时机制实现方法存在的问题。
本发明的方法是是按以下方式实现的,使用数据库和独立线程检查执行两种技术的解决方案,***提供超时数据库表,流程或环节启动时,往超时表中增加一条记录,记录下该流程或环节将要超时的时间点,而在***外,提供一个独立的线程,每隔一段时间检查超时表中已经超时流程或环节,超时的流程或环节执行相应的超时处理类,工作流只提供超时处理的实现接口,具体步骤如下:
a)新建一个超时数据库表,发起流程或发起环节时,流程或环节设置了超时限制,流程或环节的发起时间再加上设置的时限,把该流程或环节以及相应的超时时间点记录进超时数据库表中;
b)流程或环节结束时,删除超时数据库表中对应的超时信息。删除超时数据库表中原来增加的超时记录信息。
本发明的有益效果:
1)流程超时信息存放在数据库表中,而不是存放在内存中,即使遇到***断电等意外情况,也不会造成流程超时信息丢失而导致超时处理类不被执行。
2)一个独立的线程检查流程或环节超时并执行超时处理类,肯定不会造成线程阻塞,不会影响***性能。
具体实施方式
使用超时数据库表记录流程或环节超时信息,并通过一个独立的线程检查超时表中已经超时的流程或环节,对超时的流程或环节调用其相应的超时处理类,使用数据库记录流程或环节超时信息,具体步骤如下:
a)新建一个超时数据库表,发起流程或发起环节时,流程或环节设置了超时限制,流程或环节的发起时间再加上设置的时限,把该流程或环节以及相应的超时时间点记录进超时数据库表中;
b)流程或环节结束时,删除超时数据库表中对应的超时信息。删除超时数据库表中原来增加的超时记录信息。
应用***在启动时发起一个独立的线程,该线程的功能是每隔一段时间检查超时数据库表,发现当前时间大于某流程或环节的超时时间点,表示该流程或环节超时,执行该流程或环节设置的超时处理类,同时把超时数据库表中这条记录的状态置为已执行。
实施例
新建一个超时数据库表。发起流程或环节时,如果该流程或环节设置了超时限制,流程或环节的发起时间再加上设置的时限,就等于流程或环节将要超时的时间点,记录该流程或环节将要超时的时间点到超时数据库表中。流程或环节结束时,删除超时数据库表中原来增加的记录。
另外,应用***在启动时发起一个独立的线程,该线程的功能是每隔一段时间检查超时数据库表,如果发现当前时间大丁某流程或环节的超时时间点,表示该流程或环节超时,执行该流程或环节设置的超时处理类,同时把超时数据库表中这条记录的状态置为已执行,以后就不再检查这条记录了。

Claims (2)

1、流程超时机制的实现方法,其特征在于:使用数据库和独立线程检查执行两种技术的解决方案,***提供超时数据库表,流程或环节启动时,往超时表中增加一条记录,记录下该流程或环节将要超时的时间点,而在***外,提供一个独立的线程,每隔一段时间检查超时表中已经超时流程或环节,超时的流程或环节执行相应的超时处理类,工作流只提供超时处理的实现接口,具体步骤如下:
a)新建一个超时数据库表,发起流程或发起环节时,流程或环节设置了超时限制,流程或环节的发起时间再加上设置的时限,把该流程或环节以及相应的超时时间点记录进超时数据库表中;
b)流程或环节结束时,删除超时数据库表中对应的超时信息。删除超时数据库表中原来增加的超时记录信息。
2、根据权利要求1所述的方法,其特征在于,应用***在启动时发起一个独立的线程,该线程的功能是每隔一段时间检查超时数据库表,发现当前时间大于某流程或环节的超时时间点,表示该流程或环节超时,执行该流程或环节设置的超时处理类,同时把超时数据库表中这条记录的状态置为已执行。
CNA2008102379623A 2008-12-04 2008-12-04 流程超时机制的实现方法 Pending CN101477652A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CNA2008102379623A CN101477652A (zh) 2008-12-04 2008-12-04 流程超时机制的实现方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CNA2008102379623A CN101477652A (zh) 2008-12-04 2008-12-04 流程超时机制的实现方法

Publications (1)

Publication Number Publication Date
CN101477652A true CN101477652A (zh) 2009-07-08

Family

ID=40838360

Family Applications (1)

Application Number Title Priority Date Filing Date
CNA2008102379623A Pending CN101477652A (zh) 2008-12-04 2008-12-04 流程超时机制的实现方法

Country Status (1)

Country Link
CN (1) CN101477652A (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019223171A1 (zh) * 2018-05-21 2019-11-28 平安科技(深圳)有限公司 工作流管理方法、***、计算机设备和存储介质
CN108256716B (zh) * 2016-12-29 2020-10-16 同方威视技术股份有限公司 基于表来配置/执行流程和/或原子流程的方法和设备
CN113011692A (zh) * 2019-12-20 2021-06-22 江苏省城市轨道交通研究设计院股份有限公司 一种城市轨道交通总承包现场安全管理***及方法

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108256716B (zh) * 2016-12-29 2020-10-16 同方威视技术股份有限公司 基于表来配置/执行流程和/或原子流程的方法和设备
WO2019223171A1 (zh) * 2018-05-21 2019-11-28 平安科技(深圳)有限公司 工作流管理方法、***、计算机设备和存储介质
CN113011692A (zh) * 2019-12-20 2021-06-22 江苏省城市轨道交通研究设计院股份有限公司 一种城市轨道交通总承包现场安全管理***及方法

Similar Documents

Publication Publication Date Title
US8140591B2 (en) Enabling workflow awareness within a business process management (BPM) system
CN110309024B (zh) 数据处理***及其执行数据处理任务的方法
CN102929585B (zh) 一种支持多主机分布式数据处理的批处理方法及***
US8103911B2 (en) Method and system for disaster recovery based on journal events pruning in a computing environment
US20060200829A1 (en) Duplicate message elimination during recovery when multiple threads are delivering messages from a message store to a destination queue
EP1916601A3 (en) Multiprocessor system
CN101719079A (zh) 一种处理任务的方法及装置
US20110066834A1 (en) Concurrent exception handling
CN109669766A (zh) 批处理作业的处理方法、装置、设备及存储介质
CN104021043A (zh) 批量应用程序的中断重入方法及***
US20170371711A1 (en) Eliminating execution of jobs-based operational costs of related reports
CN102902589A (zh) 一种集群mic作业的管理及调度方法
JP2009536403A (ja) ワーク・アイテム・イベント処理
CN105930226A (zh) 一种数据处理方法及装置
CN109714249A (zh) 一种小程序消息的推送方法及相关装置
CN106062738B (zh) 管理作业状态
US20080320275A1 (en) Concurrent exception handling
CN101477652A (zh) 流程超时机制的实现方法
AU2015265595B2 (en) System and method for dynamic collection of system management data in a mainframe computing environment
CN110324211A (zh) 一种数据获取方法及装置
US11016951B1 (en) Microbatch loading
CN105760283B (zh) 一种日志输出方法和装置
CN107958414B (zh) 一种清除cics***长交易的方法及***
CN107203633B (zh) 数据表推数处理方法、装置及电子设备
CN107633090A (zh) 一种基于分布式文件***客户端锁拆分的方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C12 Rejection of a patent application after its publication
RJ01 Rejection of invention patent application after publication

Open date: 20090708