CN104268702B - 网站工作流中一种基于主动订阅的任务分发机制 - Google Patents
网站工作流中一种基于主动订阅的任务分发机制 Download PDFInfo
- Publication number
- CN104268702B CN104268702B CN201410514012.6A CN201410514012A CN104268702B CN 104268702 B CN104268702 B CN 104268702B CN 201410514012 A CN201410514012 A CN 201410514012A CN 104268702 B CN104268702 B CN 104268702B
- Authority
- CN
- China
- Prior art keywords
- task
- consumer
- workflow
- subscriber
- subscribed
- 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
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/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
- G06Q10/063—Operations research, analysis or management
- G06Q10/0631—Resource planning, allocation, distributing or scheduling for enterprises or organisations
- G06Q10/06311—Scheduling, planning or task assignment for a person or group
Landscapes
- Business, Economics & Management (AREA)
- Human Resources & Organizations (AREA)
- Engineering & Computer Science (AREA)
- Strategic Management (AREA)
- Entrepreneurship & Innovation (AREA)
- Economics (AREA)
- Operations Research (AREA)
- Game Theory and Decision Science (AREA)
- Development Economics (AREA)
- Marketing (AREA)
- Educational Administration (AREA)
- Quality & Reliability (AREA)
- Tourism & Hospitality (AREA)
- Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明公开了网站工作流中一种基于主动订阅的任务分发机制,包括以下步骤:S1定义任务类别;S2定义消费者类别;S3消费者订阅其需要处理的任务;S4生成任务订阅集的HASH表;S5分配任务;S6消费者接受任务。该机制能够将工作流系统产生的任务及时准确的分配到感兴趣的消费者中,驱动工作流程的正常运作;该机制支持主动订阅,当系统生成的任务类型存在订阅者时,将随机或依据等级选择订阅者分发任务事件,当系统生成的任务类型不存在关注者时,将挂起任务,直到该任务类型被消费者订阅;该机制用于解决常见于工作流系统的任务分派问题,在满足问题被及时处理时,避免产生订阅者竞争。
Description
技术领域
本发明涉及网站工具系统设计开发领域,在企业资源计划、客户关系管理、办公自动化等工作流业务系统中属于关键领域机制。
背景技术
在企业资源计划(ERP)、客户关系管理(CRM)、办公自动化(OA)等系统中,工作流程相关的任务分发机制是无法绕过的环节。任务分发机制非常重要,不同的系统往往有不同的实现细节,各种实现细节与系统的具体需求密切相关,概念上的一点区别往往带来实现上的巨大差异。
目前常见的任务分发机制有两种,一种是系统直接指派,另一种是任务广播,用户竞争令牌抢夺任务。
对于第一种情况,即系统直接指派机制,需要系统事先配置好严格的任务流程,指定流程链上每个环节的处理角色,系统任务在该流程链上按照事先设置好的机制往下进行。其中每个节点的用户都必须处于活跃状态,否则该任务流就会在出现问题的节点阻塞,直接影响任务的完成。此种机制一般用于审批类流程。
对于第二种情况,即任务广播方式,用户在竞争任务时表现出普遍一致性特点。用户和用户之间在平等的地位上竞争任务,系统基于令牌机制呈随机性的选择执行任务的用户。该机制相比第一种机制具有更大的灵活性,任务的消费者是一个群体,其中某个消费者的活跃度不会影响任务的分发和执行,能够保证任务系统的正常完成。此种机制一般用于业务处理流程。
在实际的需求中,往往存在这样一种情况。在所谓的“专家系统”中,任务往往具有一定的专业性,需要具备某种特定技能的“专家任务消费者”来接领并执行任务。但是“领域专家”又是一个群体,其中任何一个人都能够执行任务。因此需要任务系统在一定范围的“任务消费者”中分派任务。既要保证任务在一个确定的分派流程中严格有序的向下进行,又要保证任务的消费者具有一定的冗余度,防止单点故障造成的任务搁置。本发明提出的网站工作流中一种基于主动订阅的任务分发机制就是一种满足该需求的专家任务分发系统,同时也兼顾审批流程。其中,任务消费者需要主动的对感兴趣(或自身专业范围内)的任务类别进行订阅,使系统知道该类任务的执行专家有哪些,并维护该消费者列表。系统中生产者一旦产生任务,系统会查询该任务的执行专家,配合其他权重机制从中选取任务消费者,以此保证任务系统有序、稳定的在各个状态间流转,防止任务被死锁挂起。
发明内容
为解决上述问题,本发明提出网站工作流中一种基于主动订阅的任务分发机制。
技术方案:
网站工作流中一种基于主动订阅的任务分发机制,包括以下步骤:
S1.定义任务类别;
S2.定义消费者类别;
S3.消费者订阅其需要处理的任务;
S4.生成任务订阅集的HASH表;对步骤S3中消费者的消费者类别与其订阅任务的任务类别进行绑定,以任务类别为键值,将订阅该类任务的消费者存放为一个描述任务订阅集的HASH表;
S5.分配任务;根据步骤S4HASH表进行任务分配;
S6.消费者接受任务。
进一步的,步骤S1中定义任务类别具体是指,对工作流系统内的所有任务,定义其任务状态和任务级别,任务状态包括未分发、已分发和已完成三种状态,任务级别包括单订阅者任务和多订阅者任务两种级别。
对多订阅者任务,设置订阅者人数上限及下限,以限制处理该类任务的消费者数量。
对于多订阅者任务,消费者对其处理方式包括完成、退订或是转发,对于单订阅者任务,消费者接受该类任务后必须完成。
退订包括消费者主动退订和任务取消两种情况,发生消费者主动退订时,系统更新HASH表即可;发生任务取消时,系统删除HASH表,该任务作废。
转发包括任务消费者流转和任务管理者流转两种情况;任务消费者流转是指消费者将其接受的任务转发给其他消费者处理,但有最大转发次数的限制,以避免该类任务在系统中一直被转发而得不到处理;任务管理者流转是指,工作流系统在任务中指定一个明确的任务管理者,该任务管理者利用任务转发机制,将其分派给任务订阅集中的其他消费者,以此通过人工判定来达到最优的任务分派效果。
进一步的,步骤S2中定义消费者类别具体是指,对系统中处理任务的消费者,将其定义为十个任务领取等级,等级越高的用户代表其处理问题的能力越强,会被优先分派任务。
进一步的,步骤S5中分配任务包括如下过程:
S51.查询步骤S4HASH表,找到订阅该任务的消费者群;
S52.依据群内消费者的任务领取等级,刷选具有最高等级的消费者;
S53.在具有最高等级的消费者中,选取拥有任务量最少的一个消费者,将该任务分配给他。
由于采用了上述技术方案,本发明具有以下有益效果:
(1)对任务级别的划分,使本发明同时兼顾审批类流程和业务处理流程;
(2)本发明支持消费者主动订阅,使消费者只会分配到自己感兴趣的任务或是使任务被分配给相应领域的专家,达到任务被合理分配的目的,驱动工作流的正常运作;
(3)本发明支持消费者对接受的任务退订或是转发,避免了因为消费者自身的问题使任务被搁置,保证任务能够有序完成。
附图说明
图1是本发明的流程示意图;
具体实施方式
下面结合附图对本发明作进一步阐述。
如图1所示,网站工作流中一种基于主动订阅的任务分发机制,包括如下步骤:
S1定义任务类别;
网站工作流系统首先需要定义任务类别,任务类别根据工作流系统的需要定义为一组常量,用于标识处理任务的消费者专家将来需要订阅的信息。定义任务状态:未分发、已分发、已完成。定义任务级别:单订阅者任务和多订阅者任务,其中,审批类流程被定义为单订阅者任务,业务处理流程被定义为多订阅者任务。
对于多订阅者任务,可以附加设置订阅者人数上限及下限,用以限制处理该任务的消费者数量。如果一类任务的订阅者人数未达到人数下限,则该类任务不会被系统生成。
S2定义消费者类别;
具体指通过0-9数值(具体数值根据业务需要调整)将任务消费者定义为十个任务领取等级,数值越大的用户代表其处理问题的能力越强,工作流系统会越优先分派任务。
S3消费者订阅其需要处理的任务;
消费者代表不同的用户角色,消费者进入系统后,根据自己的兴趣和业务领域,订阅自己可处理任务类别。
对于多订阅者任务,订阅者可以随时取消任务订阅,此过程称为退订,退订过程在实际中由多种情况触发,一种是消费者主动退订,这种情况往往是由于消费者用户分组调整、部分调整、请假或离职等原因导致;此类退订,对任务不产生任何影响,需要工作流系统即时更新任务订阅集的HASH表即可;当某一类任务的订阅者数量由于退订行为归零以后,工作流系统需要标识该任务,并通知系统管理员,同时配以适当手段,如阻止该类任务生成,来确保工作流系统中不出现无法处理的任务;另外,退订行为不影响已经分配给任务消费者的任务,即任务消费者有义务完成其已经得到分派的任务,而不管该任务类别当前是否已经被成功退订。另一种是任务取消,某类任务类型可能会应为业务逻辑修改等原因导致该类任务作废,此时由任务触发的集体退订会导致工作流系统直接删除任务订阅集的HASH表。
对于单订阅者任务,消费者不可退订任务,以防止系统运行过程中,由于用户的操作导致任务无法匹配消费者,出现任务流程无法继续往下进行的情况。
S4生成任务订阅集的HASH表;
工作流系统会将消费者的任务领取等级的数值与其订阅任务的任务类别进行绑定,以任务类别为键值,将订阅该类任务的消费者存放为一个描述任务订阅集的HASH表。
S5分配任务;当工作流系统产生任务后,根据HASH表进行任务分配,包括以下步骤:
S51查询HASH表,找到订阅该任务的消费者群;
S52依据群内消费者的任务领取等级,刷选具有最高任务领取等级的消费者;
S53在具有最高任务领取等级的消费者中,选取拥有任务量最少的一个消费者,将该任务分配给他,若拥有最少任务量的消费者不只一个,则系统随机将该任务分配给其中一个消费者。
S6消费者接受任务;
消费者接受任务后,对于多订阅者任务,可将任务完成或是转发,对于单订阅者任务,消费者接受该类任务后必须完成。
对于业务处理流程类任务(被定义为多订阅者任务),可以根据业务的需要提供任务转发机制。该机制设计分为两个层面进行,其中一种是任务消费者流转,另一种是任务管理者流转。
任务消费者流转比较简单,当一个任务消费者被系统自动分派任务后,可能由于该消费者临时难以处理任务、或者当前存在空闲的更适合处理该任务的其他消费者,此时系统应该支持持有任务的消费者将该任务转发给其他消费者处理,用以加快任务处理的时效。为了防止状态机制从有限变为无限,描述任务的数据结构中还应该设置最大转发次数,一旦该任务的转发次数达到最大转发次数,该任务将不能再被转发出去,由当前持有该任务的消费者负责解决,从而避免某一类任务始终在转发过程中,无法得到运行。
任务管理者流转用于解决系统在自动分派任务消费者时无法最优的选取任务消费者的缺陷,对于应用此类机制的工作流系统,需要工作流系统在任务中指定一个明确的任务管理者,任务管理者与任务消费者一样对应于系统中的用户。此类任务一旦产生,系统直接将其分派给任务管理者,由该任务管理者利用任务转发机制,将其分派给任务描述集中的其他消费者,以此通过人工判定来达到最优的任务分派效果。
对于审批流程类任务(被定义为单订阅者任务),工作流系统需要在配置任务类别时,预置该任务的订阅人,并将该任务的级别设置为单订阅者任务,以此来保证本任务具有明确、可靠的任务消费者。相对于业务处理流程来讲,审批流程类任务分配机制显得更为简单、确定。
以上具体实施方式,描述的是一种任务分配及其消费者管理的机制,能够广泛的应用于网站工作流系统中,该机制与具体的编程语言无关。可以根据业务的需要增删其中功能点,本发明既满足业务处理流程类工作流需求也满足审批类工作流需求。
本领域的普通技术人员将会意识到,这里所述的实施例是为了帮助读者理解本发明的原理,应被理解为本发明的保护范围并不局限于这样的特别陈述和实施例。本领域的普通技术人员可以根据本发明公开的这些技术启示做出各种不脱离本发明实质的其它各种具体变形和组合,这些变形和组合仍然在本发明的保护范围内。
Claims (6)
1.网站工作流中一种基于主动订阅的任务分发机制,其特征在于,包括以下步骤:
S1.定义任务类别,具体为对工作流系统内的所有任务,定义其任务状态和任务级别,所述任务状态包括未分发、已分发和已完成三种状态,所述任务级别包括单订阅者任务和多订阅者任务两种级别,其中,审批类流程被定义为单订阅者任务,业务处理流程被定义为多订阅者任务;
S2.定义消费者类别;
S3.消费者订阅其需要处理的任务,对于所述多订阅者任务,消费者对其处理方式包括完成、退订或是转发,对于所述单订阅者任务,消费者接受该类任务后必须完成;
S4.生成任务订阅集的HASH表;对步骤S3中所述消费者的消费者类别与其订阅任务的任务类别进行绑定,以任务类别为键值,将订阅该类任务的消费者存放为一个描述任务订阅集的HASH表;
S5.分配任务;根据步骤S4所述HASH表进行任务分配;
S6.消费者接受任务。
2.根据权利要求1所述的网站工作流中一种基于主动订阅的任务分发机制,其特征在于:对所述多订阅者任务,设置订阅者人数上限及下限,以限制处理该类任务的消费者数量。
3.根据权利要求1所述的网站工作流中一种基于主动订阅的任务分发机制,其特征在于:所述退订包括消费者主动退订和任务取消两种情况,发生消费者主动退订时,系统更新所述HASH表;发生任务取消时,系统删除所述HASH表,该任务作废。
4.根据权利要求1所述的网站工作流中一种基于主动订阅的任务分发机制,其特征在于:所述转发包括任务消费者流转和任务管理者流转两种情况;所述任务消费者流转是指消费者将其接受的任务转发给其他消费者处理,但有最大转发次数的限制,以避免该类任务在系统中一直被转发而得不到处理;所述任务管理者流转是指,工作流系统在任务中指定一个明确的任务管理者,该任务管理者利用任务转发机制,将其分派给任务描述集中的其他消费者,以此通过人工判定来达到最优的任务分派效果。
5.根据权利要求1所述的网站工作流中一种基于主动订阅的任务分发机制,其特征在于:步骤S2中所述定义消费者类别具体是指,对系统中处理任务的消费者,将其定义为十个任务领取等级,等级越高的用户代表其处理问题的能力越强,会被优先分派任务。
6.根据权利要求5所述的网站工作流中一种基于主动订阅的任务分发机制,其特征在于,步骤S5中所述分配任务包括如下过程:
S51.查询步骤S4所述HASH表,找到订阅该任务的消费者群;
S52.依据所述群内消费者的任务领取等级,刷选具有最高等级的消费者;
S53.在所述具有最高等级的消费者中,选取拥有任务量最少的一个消费者,将该任务分配给他。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410514012.6A CN104268702B (zh) | 2014-09-29 | 2014-09-29 | 网站工作流中一种基于主动订阅的任务分发机制 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410514012.6A CN104268702B (zh) | 2014-09-29 | 2014-09-29 | 网站工作流中一种基于主动订阅的任务分发机制 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104268702A CN104268702A (zh) | 2015-01-07 |
CN104268702B true CN104268702B (zh) | 2018-04-27 |
Family
ID=52160222
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410514012.6A Active CN104268702B (zh) | 2014-09-29 | 2014-09-29 | 网站工作流中一种基于主动订阅的任务分发机制 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104268702B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105701624A (zh) * | 2016-02-26 | 2016-06-22 | 广州品唯软件有限公司 | 一种任务处理方法及装置 |
CN107239343B (zh) * | 2017-06-02 | 2020-10-16 | 浪潮金融信息技术有限公司 | 数据处理方法及装置 |
CN111178823B (zh) * | 2019-11-28 | 2023-06-16 | 泰康保险集团股份有限公司 | 居住相关事务的取消方法和装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101146058A (zh) * | 2007-11-13 | 2008-03-19 | 北京中搜在线软件有限公司 | 互联网即时信息的共享订阅系统及共享订阅方法 |
CN103345664A (zh) * | 2013-05-31 | 2013-10-09 | 华为技术有限公司 | 工作流-任务调度适配方法及系统 |
CN103458033A (zh) * | 2013-09-04 | 2013-12-18 | 北京邮电大学 | 事件驱动、面向服务的物联网服务提供系统及其工作方法 |
CN103905521A (zh) * | 2012-12-31 | 2014-07-02 | 中国移动通信集团公司 | 一种用于网络服务的信息处理系统和方法 |
-
2014
- 2014-09-29 CN CN201410514012.6A patent/CN104268702B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101146058A (zh) * | 2007-11-13 | 2008-03-19 | 北京中搜在线软件有限公司 | 互联网即时信息的共享订阅系统及共享订阅方法 |
CN103905521A (zh) * | 2012-12-31 | 2014-07-02 | 中国移动通信集团公司 | 一种用于网络服务的信息处理系统和方法 |
CN103345664A (zh) * | 2013-05-31 | 2013-10-09 | 华为技术有限公司 | 工作流-任务调度适配方法及系统 |
CN103458033A (zh) * | 2013-09-04 | 2013-12-18 | 北京邮电大学 | 事件驱动、面向服务的物联网服务提供系统及其工作方法 |
Also Published As
Publication number | Publication date |
---|---|
CN104268702A (zh) | 2015-01-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7062537B2 (en) | Workflow services architecture | |
US20150199641A1 (en) | Labor Distribution Management Using Dynamic State Indicators | |
US20120330710A1 (en) | Methods and systems for integrating timing and location into appointment schedules | |
US20140207605A1 (en) | Invitation-to-bid management system | |
CN106844018A (zh) | 一种任务处理方法、装置及系统 | |
US8875152B2 (en) | System, method and computer program product for dynamically increasing resources utilized for processing tasks | |
US20100192067A1 (en) | Customer service & support systems and methods for use in an on demand database service | |
US10817815B2 (en) | Providing attendees from a different organization with supplemental information related to a calendar event | |
US20050097505A1 (en) | Facilitation of multi-project management using critical chain methodology | |
US20150269652A1 (en) | Method and system for processing periodic orders | |
CN104268702B (zh) | 网站工作流中一种基于主动订阅的任务分发机制 | |
US20210075913A1 (en) | System and method of automated routing and guidance based on continuous customer and customer service representative feedback | |
US11277514B2 (en) | System and method of automated routing and guidance based on continuous customer and customer service representative feedback | |
WO2000072210A9 (en) | Customer lead management system | |
CN105718322B (zh) | 同一进程下多应用模块客户端的异常处理方法 | |
CN110782223A (zh) | Oa系统的通用工作流装置及通用工作流实现方法 | |
CN109508843A (zh) | 一种智能服务实现方法及装置 | |
US20160189090A1 (en) | Smart Scheduling for Processing Back Orders | |
Fischer et al. | Effects of different types of imperfect advance demand information in production systems | |
CN114091797A (zh) | 智能派工的方法和装置 | |
Liu* et al. | Practical lot release methodology for semiconductor back-end manufacturing | |
Cheung et al. | Balanced and synchronized ordering in supply chains | |
US20130046549A1 (en) | Method and system for social enterprise portfolio management | |
Shi | Approximation algorithms for stochastic optimization problems in operations management | |
US10324994B2 (en) | Flow-directed collaborative communication |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |