CN101477652A - 流程超时机制的实现方法 - Google Patents
流程超时机制的实现方法 Download PDFInfo
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 76
- 230000008569 process Effects 0.000 title claims abstract description 67
- 238000011282 treatment Methods 0.000 claims abstract description 15
- 238000005516 engineering process Methods 0.000 claims abstract description 5
- 230000000977 initiatory effect Effects 0.000 claims description 9
- 238000007689 inspection Methods 0.000 claims description 2
- 238000011161 development Methods 0.000 description 4
- 230000006870 function Effects 0.000 description 2
- 238000012544 monitoring process Methods 0.000 description 2
- 238000013459 approach Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004883 computer application Methods 0.000 description 1
- 238000005111 flow chemistry technique Methods 0.000 description 1
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所述的方法,其特征在于,应用***在启动时发起一个独立的线程,该线程的功能是每隔一段时间检查超时数据库表,发现当前时间大于某流程或环节的超时时间点,表示该流程或环节超时,执行该流程或环节设置的超时处理类,同时把超时数据库表中这条记录的状态置为已执行。
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)
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 | 江苏省城市轨道交通研究设计院股份有限公司 | 一种城市轨道交通总承包现场安全管理***及方法 |
-
2008
- 2008-12-04 CN CNA2008102379623A patent/CN101477652A/zh active Pending
Cited By (3)
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 |