分布式工作流程处理方法及装置的制作方法

文档序号:6598586阅读:214来源:国知局
专利名称:分布式工作流程处理方法及装置的制作方法
技术领域
本发明涉及网络技术领域,尤其涉及一种分布式工作流程处理方法及装置。
背景技术
跨地域的流程管理是目前办公系统或管理系统常见的需求。如何使一个地域的管理人员完成申请单的提交,另一个地域的管理人员完成申请单的审批,第三个地域的管理人员完成申请单的实施,是分布式管理工作流程所要解决的问题。 目前的分布式管理工作流程大多采用集中式或集群式的管理方法,即所有地域的管理人员均访问同一个流程服务器或同一个流程服务器集群,依靠一个工作流引擎或一个工作流引擎集群来实现工作流程的控制。 一个地域的管理人员提交申请单到流程服务器后,另一个地域的管理人员访问同一个流程服务器审批该申请单,第三个地域的管理人员访问同一个流程服务器实施该申请单。 发明人发现现有的分布式管理工作流程采用集中式或集群式的管理方法,所有地域的管理人员均访问同一个流程服务器,所以流程服务器的处理性能要求较高,成本也就响应较高;为了分担访问压力,流程服务器集群中的每一流程服务器中都部署有完整的流程定义,如提交流程定义、审批流程定义及实施流程定义,任何一步流程发生变化,需要更新所有流程服务器,在工作流程定义发布或更新时网络中的流量很大。

发明内容
本发明实施例提供了一种分布式工作流程处理方法及装置,用以减少服务器处理工作流程时的工作量,降低对服务器的处理性能要求,同时能够减少在工作流程定义发布或更新时网络中的数据传输流量。 本发明实施例提供的分布式工作流程处理方法,包括
接收工作流程开始命令; 根据所述工作流程开始命令和预存的工作流程的信息,执行所述工作流程开始命令对应的工作流程; 根据所述预存的工作流程的信息,向上层服务器发送下一步工作流程开始命令,以供所述上层服务器根据所述下一步工作流程开始命令执行所述下一步工作流程开始命令对应的工作流程。
本发明实施例提供的分布式工作流程处理装置,包括
接收模块,用于接收工作流程开始命令; 执行模块,用于根据所述工作流程开始命令和预存的工作流程的信息,执行所述工作流程开始命令对应的工作流程; 发送模块,用于根据所述预存的工作流程的信息,向上层服务器发送下一步工作流程开始命令,以供所述上层服务器根据所述下一步工作流程开始命令执行所述下一步工作流程开始命令对应的工作流程。
本发明实施例中,本地保存有工作流程的信息,在接收到工作流程开始命令后,执行预存的工作流程,且能够向上层服务器发送下一步工作流程开始命令,以供上层服务器根据下一步工作流程开始命令,执行下一步工作流程,所以服务器中无需执行所有的工作流程,因此减少了服务器的处理量,同时也就降低了对服务器的处理性能得要求。本地无需部署完整的流程定义,如果预存的工作流程发生变化,更新本地的服务器中的流程定义即可,无需更新其它服务器,所以减少了工作流程定义发布或更新时网络中的流量。


为了更清楚地说明本发明实施例中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明分布式工作流程处理方法一实施例的流程 图2为本发明分布式工作流程处理方法另一实施例的流程 图3为本发明分布式工作流程处理方法又一实施例的流程 图4为本发明分布式工作流程处理装置一实施例的结构示意图。
具体实施例方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。 图1为本发明分布式工作流程处理方法一实施例的流程图。如图1所示,本实施例具体包括如下步骤 步骤101、接收工作流程开始命令。 本地服务器接收工作流程开始命令,该工作流程开始命令用于指示本地服务器执行预存的工作流程。上述工作流程可以包括电子申请审批流程、电子协同工作流程等。
步骤102、根据该工作流程开始命令和预存的工作流程的信息,执行上述预存的工作流程。 本地服务器按照预存的工作流程的信息,在本地域管理人员的访问下,执行预存的工作流程。 步骤103、根据所述预存的工作流程的信息,向上层服务器发送下一步工作流程开始命令,以供上层服务器根据下一步工作流程开始命令,执行下一步工作流程。
上层服务器用来执行本地服务器处理的工作流程以外的工作流程,它可以被放置在远端的数据中心里,通过远程访问进行控制。本地服务器中还保存有指示信息,该指示信息用于指示预存的工作流程对应的下一步工作流程是上层服务器对应的工作流程,上层服务器中保存有下一步工作流程的信息。本地服务器向该上层服务器发送下一步工作流程开始命令,该下一步工作流程开始命令用于指示上层服务器执行它保存的下一步工作流程;上层服务器在它所在地域的管理人员的访问下,执行下一步工作流程。
本实施例中,本地服务器和上层服务器保证其对应地域的管理人员能够访问即可,故本地服务器和上层服务器不需要部署在公网或各地域间有VPN连接的网络中,降低了成本。本地服务器中保存有本地域的工作流程的信息,执行本地工作流程,且能够向上层服务器发送下一步工作流程开始命令,以供上层服务器根据下一步工作流程开始命令,执行下一步工作流程,所以本地服务器无需部署完整的流程定义,如果本地服务器预存的工作流程发生变化,更新本地服务器即可,无需更新其它服务器。
进一步的,在上述实施例的基础上,一种情况为步骤101可以具体为接收上层服
务器发送的工作流程开始命令。具体地说,步骤101接收的工作流程开始命令对应的工作
流程不是完整工作流程的第一步,在步骤101之前,上层服务器执行它保存的上一步工作
流程,然后在步骤101中,本地服务器接收上层服务器发送的工作流程开始命令。
另一种情况为步骤101可以具体为接收管理人员通过工作终端发送的工作流程
开始命令。具体地,该工作流程开始命令对应的工作流程是完整工作流程的第一步,本地服
务器地域的管理人员通过其工作终端访问本地服务器,发送工作流程开始命令。 再进一步,本地服务器保存的指示信息可以具体为上层服务器的地址,步骤103
具体包括根据上层服务器的地址,向上层服务器发送下一步工作流程开始命令。具体地
说,本地服务器和上层服务器可以部署在不同的网络中,本地服务器保存有上层服务器的
地址,可以根据该地址,采用转发机制向上层服务器发送下一步工作流程开始命令,例如
可以采用网关转发机制向上层服务器发送下一步工作流程开始命令。相对于基于VPN连接
的转发机制,网关转发机制的成本较小。 本发明实施例中,本地保存有工作流程的信息,在接收到工作流程开始命令后,执
行预存的工作流程,且能够向上层服务器发送下一步工作流程开始命令,以供上层服务器
根据下一步工作流程开始命令,执行下一步工作流程,所以服务器中无需执行所有的工作
流程,因此减少了服务器的处理量,同时也就降低了对服务器的处理性能得要求。本地无需
部署完整的流程定义,如果预存的工作流程发生变化,更新本地的服务器中的流程定义即
可,无需更新其它服务器,所以减少了工作流程定义发布或更新时网络中的流量。 下面通过两个具体的应用场景来描述本发明实施例的技术方案。 图2为本发明分布式工作流程处理方法另一实施例的流程图。本实施例对应的应
用场景的工作流程包括提交申请单流程和审批申请单流程,提交申请单流程的下一步工
作流程是审批申请单流程。其中,提交申请单流程的定义保存在服务器A中,审批申请单流
程的定义保存在服务器B中,服务器A对应的上层服务器为服务器B。 如图2所示,本实施例具体包括如下步骤 步骤201、服务器A接收管理人员A通过工作终端发送的提交申请单流程开始命令。 提交申请单流程是完整工作流程的第一步。 其中管理人员A是服务器A所在地域的管理人员,该管理人员A访问服务器A,通过工作终端向服务器A发送提交申请单流程开始命令,用以请求在服务器A上提交申请单。
步骤202、服务器A根据提交申请单流程开始命令和保存的提交申请单流程的定义,执行提交申请单流程。 服务器A在管理人员A的访问下,执行提交申请单流程。
步骤203、服务器A根据保存的用于指示下一步工作流程是服务器B对应的审批申 请单流程的指示信息,向保存审批申请单流程的定义的服务器B发送审批申请单流程开始 命令。 服务器A中可以只保存提交申请单流程的定义,以及下一步工作流程是服务器B 对应的审批申请单流程的指示信息,优选地,该指示信息可以为服务器B的地址,使得服务 器A执行完成提交申请单流程后,自动向服务器B发送审批申请单流程开始命令,之后服务 器A处于等待状态。 步骤204、服务器B根据审批申请单流程开始命令,执行审批申请单流程。
具体地,服务器B启动审批申请单流程,将该审批申请单流程对应的任务分配给 相应的管理人员B,管理人员B是服务器B所在地域的管理人员,管理人员B访问服务器B, 完成审批申请单流程对应的任务,从而完成审批申请单流程。 后续处理过程中,服务器B执行完审批申请单流程后,得到审批结果;服务器B可 以将审批结果返回给服务器A ;服务器A将审批结果返回给管理人员A的工作终端,以供管 理人员A参考。 本实施例保证服务器A能够被管理人员A访问、服务器B能够被管理人员B访问 即可,无需使服务器A能够同时被管理人员A和管理人员B访问,服务器B能够同时被管理 人员A和管理人员B访问,故服务器A和服务器B不需要部署在公网或各地域间有VPN连 接的网络中,降低了成本。本实施例中,服务器A和服务器B可以部署在不同的网络中,它 们之间可以采用转发机制交互命令,优选地,可以采用网关转发机制,相对于基于VPN连接 的转发机制,网关转发机制的成本较小。 服务器A和服务器B可以只保存各自的工作流程的信息,服务器A不需要保存和 维护审批申请单流程,服务器B不需要保存和维护提交申请单流程,所以服务器B中无需执 行所有的工作流程,因此减少了服务器的处理量,同时也就降低了对服务器的处理性能得 要求。如果其中一个工作流程发生变化,更新该工作流程对应的服务器即可,无需更新其 它服务器,例如如果提交申请单流程发生变化,更新服务器A即可,无需更新服务器B。这 样,大大减少了工作流程定义发布或更新时网络中的流量;每台服务器只维护自己的工作 流程,降低了服务器性能的负担。 图3为本发明分布式工作流程处理方法又一实施例的流程图。本实施例对应的应
用场景的工作流程包括提交申请单流程、审批申请单流程和实施申请单流程,提交申请单
流程的下一步工作流程是审批申请单流程,审批申请单流程的下一步工作流程是实施申请
单流程。其中,提交申请单流程的定义保存在服务器A中,审批申请单流程的定义保存在服
务器B中,实施申请单流程的定义保存在服务器C中,服务器A对应的上层服务器为服务器
B,服务器B对应的上层服务器为服务器C。 如图3所示,本实施例具体包括如下步骤 步骤301、服务器B接收服务器A发送的审批申请单流程开始命令。 审批申请单流程不是完整工作流程的第一步。具体地,步骤301之前的处理过程
可以参见图2所示的实施例。 步骤302、服务器B根据审批申请单流程开始命令和保存的审批申请单流程的定 义,执行审批申请单流程。
服务器B在管理人员B的访问下,执行审批申请单流程。 步骤303、服务器B根据保存的用于指示下一步工作流程是服务器C对应的实施申 请单流程的指示信息,向保存实施申请单流程的定义的服务器C发送实施申请单流程开始 命令。 服务器B中可以只保存审批申请单流程的定义,以及下一步工作流程是服务器C 对应的实施申请单流程的指示信息,优选地,该指示信息可以为服务器C的地址,使得服务 器B执行完成审批申请单流程后,自动向服务器C发送实施申请单流程开始命令,之后服务 器B处于等待状态。 步骤304、服务器C根据实施申请单流程开始命令,执行实施申请单流程。
具体地,服务器C启动实施申请单流程,将该实施申请单流程对应的任务分配给 相应的管理人员C,管理人员C是服务器C所在地域的管理人员,管理人员C访问服务器C, 完成实施申请单流程对应的任务,从而完成实施申请单流程。 后续处理过程中,服务器C执行完实施申请单流程后,得到实施结果;服务器C可 以将实施结果返回给服务器B ;服务器B将实施结果返回给服务器A ;服务器A将实施结果 返回给管理人员A的工作终端,以供管理人员A参考。 本实施例保证服务器B能够被管理人员B访问、服务器C能够被管理人员C访问 即可,无需使服务器B能够同时被管理人员B和管理人员C访问,服务器C能够同时被管理 人员B和管理人员C访问,故服务器B和服务器C不需要部署在公网或各地域间有VPN连 接的网络中,降低了成本。本实施例中,服务器B和服务器C可以部署在不同的网络中,它 们之间可以采用转发机制交互命令,优选地,可以采用网关转发机制,相对于基于VPN连接 的转发机制,网关转发机制的成本较小。 服务器B和服务器C可以只保存各自的工作流程的信息,服务器B不需要保存和 维护实施申请单流程,服务器C不需要保存和维护审批申请单流程。如果其中一个工作流 程发生变化,更新该工作流程对应的服务器即可,无需更新其它服务器,例如如果审批申 请单流程发生变化,更新服务器B即可,无需更新服务器C。这样,大大减少了工作流程定义 发布或更新时网络中的流量;每台服务器只维护自己的工作流程,降低了服务器性能的负 担。 图4为本发明分布式工作流程处理装置一实施例的结构示意图。如图4所示,本 实施例具体包括接收模块11、执行模块12和发送模块13,其中
接收模块11用于接收工作流程开始命令; 执行模块12用于根据工作流程开始命令和预存的工作流程的信息,执行预存的 工作流程; 发送模块13用于根据所述预存的工作流程的信息,向上层服务器发送下一步工 作流程开始命令,以供上层服务器根据下一步工作流程开始命令,执行下一步工作流程。
本实施例提供的分布式工作流程装置可以为本地服务器,本地服务器中的接收模 块11接收工作流程开始命令,该工作流程开始命令用于指示本地服务器执行预存的工作 流程;执行模块12按照预存的工作流程的信息,在本地域管理人员的访问下,执行预存的 工作流程;发送模块13根据所述预存的工作流程的信息,向上层服务器发送下一步工作流 程开始命令,以供上层服务器根据下一步工作流程开始命令,执行下一步工作流程。具体地,上述指示信息用于指示预存的工作流程对应的下一步工作流程是上层服务器对应的工 作流程,上层服务器中保存有下一步工作流程的信息。发送模块13向该上层服务器发送下 一步工作流程开始命令,该下一步工作流程开始命令用于指示上层服务器执行它保存的下 一步工作流程;上层服务器在它所在地域的管理人员的访问下,执行下一步工作流程。
本实施例中,本地服务器和上层服务器保证其对应地域的管理人员能够访问即 可,故本地服务器和上层服务器不需要部署在公网或各地域间有VPN连接的网络中,降低 了成本。本地服务器中保存有本地域的工作流程的信息,执行本地工作流程,且能够向上层 服务器发送下一步工作流程开始命令,以供上层服务器根据下一步工作流程开始命令,执 行下一步工作流程,所以本地服务器无需部署完整的流程定义,如果本地服务器预存的工 作流程发生变化,更新本地服务器即可,无需更新其它服务器,这样,大大减少了工作流程 定义发布或更新时网络中的流量;本地服务器只维护自己的工作流程,降低了服务器性能 的负担。 进一步的,在上述实施例的基础上,一种情况为接收模块11具体用于接收上层服 务器发送的工作流程开始命令。具体地说,接收模块11接收的工作流程开始命令对应的工 作流程不是完整工作流程的第一步,本地服务器的上层服务器执行它保存的上一步工作流 程,然后接收模块11接收上层服务器发送的工作流程开始命令。优选地,本实施例提供的 本地服务器可以为方法另 一实施例中的服务器A。 另一种情况为接收模块11具体用于接收管理人员通过工作终端发送的工作流程 开始命令。具体地说,接收模块11接收的工作流程开始命令对应的工作流程是完整工作流 程的第一步,本地服务器地域的管理人员通过其工作终端访问本地服务器,向接收模块11 发送工作流程开始命令。优选地,本实施例提供的本地服务器可以为方法又一实施例中的 服务器B。 再进一步,本地服务器保存的指示信息可以具体为上层服务器的地址,发送模块 13具体用于根据上层服务器的地址,采用转发机制向上层服务器发送下一步工作流程开始 命令。具体地说,本地服务器和上层服务器可以部署在不同的网络中,本地服务器保存有上 层服务器的地址,发送模块13可以根据该地址,采用转发机制向上层服务器发送下一步工 作流程开始命令,例如发送模块13可以采用网关转发机制向上层服务器发送下一步工作 流程开始命令。相对于基于VPN连接的转发机制,网关转发机制的成本较小。
本发明实施例中,本地保存有工作流程的信息,在接收模块接收到工作流程开始 命令后,通过执行模块执行预存的工作流程,且能够通过发送模块向上层服务器发送下一 步工作流程开始命令,以供上层服务器根据下一步工作流程开始命令,执行下一步工作流 程,所以服务器中无需执行所有的工作流程,因此减少了服务器的处理量,同时也就降低了 对服务器的处理性能得要求。本地无需部署完整的流程定义,如果预存的工作流程发生变 化,更新本地的服务器中的流程定义即可,无需更新其它服务器,所以减少了工作流程定义 发布或更新时网络中的流量。 本领域普通技术人员可以理解实现上述方法实施例的全部或部分步骤可以通过 程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序 在执行时,执行包括上述方法实施例的步骤,而前述的存储介质包括R0M、 RAM、磁碟或者光 盘等各种可以存储程序代码的介质。
最后应说明的是以上实施例仅用以说明本发明实施例的技术方案,而非对其限 制;尽管参照前述实施例对本发明实施例进行了详细的说明,本领域的普通技术人员应当 理解其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征 进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明实施例各实 施例技术方案的精神和范围。
权利要求
一种分布式工作流程处理方法,其特征在于,包括接收工作流程开始命令;根据所述工作流程开始命令和预存的工作流程的信息,执行所述工作流程开始命令对应的工作流程;根据所述预存的工作流程的信息,向上层服务器发送下一步工作流程开始命令,以供所述上层服务器根据所述下一步工作流程开始命令执行所述下一步工作流程开始命令对应的工作流程。
2. 根据权利要求1所述的分布式工作流程处理方法,其特征在于,所述接收工作流程开始命令包括接收上层服务器发送的工作流程开始命令。
3. 根据权利要求1所述的分布式工作流程处理方法,其特征在于,所述接收工作流程开始命令包括接收管理人员通过工作终端发送的工作流程开始命令。
4. 根据权利要求1或2或3所述的分布式工作流程处理方法,其特征在于,所述向上层服务器发送下一步工作流程开始命令包括根据所述上层服务器的地址,向上层服务器转发下一步工作流程开始命令。
5. —种分布式工作流程处理装置,其特征在于,包括接收模块,用于接收工作流程开始命令;执行模块,用于根据所述工作流程开始命令和预存的工作流程的信息,执行所述工作流程开始命令对应的工作流程;发送模块,用于根据所述预存的工作流程的信息,向上层服务器发送下一步工作流程开始命令,以供所述上层服务器根据所述下一步工作流程开始命令执行所述下一步工作流程开始命令对应的工作流程。
6. 根据权利要求5所述的分布式工作流程处理装置,其特征在于,所述接收模块具体用于接收上层服务器发送的所述工作流程开始命令。
7. 根据权利要求5所述的分布式工作流程处理装置,其特征在于,所述接收模块具体用于接收管理人员通过工作终端发送的所述工作流程开始命令。
8. 根据权利要求5或6或7所述的分布式工作流程处理装置,其特征在于,所述发送模块具体用于根据所述上层服务器的地址,向所述上层服务器转发下一步工作流程开始命令。
全文摘要
本发明实施例涉及一种分布式工作流程处理方法及装置,其中方法包括接收工作流程开始命令;根据所述工作流程开始命令和预存的工作流程的信息,执行所述工作流程开始命令对应的工作流程;根据所述预存的工作流程的信息,向上层服务器发送下一步工作流程开始命令,以供所述上层服务器根据所述下一步工作流程开始命令,执行所述下一步工作流程开始命令对应的工作流程。本发明实施例中,本地无需部署完整的流程定义,如果预存的工作流程发生变化,更新本地的服务器即可,无需更新其它服务器,减少了工作流程定义发布或更新时网络中的流量。
文档编号G06Q10/00GK101789102SQ201010114869
公开日2010年7月28日 申请日期2010年2月24日 优先权日2010年2月24日
发明者齐兴 申请人:成都市华为赛门铁克科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1