一种轻量级的分布式工作流引擎构建系统技术方案

技术编号:27880815 阅读:20 留言:0更新日期:2021-03-31 01:18
本发明专利技术提供一种轻量级的分布式工作流引擎构建系统,包括工作流引擎、工作流引擎客户端和数据库,所述工作流引擎用于工作流流程处理和工作流流程数据维护,所述工作流引擎客户端用于给工作流引擎发送用户工作流实例,所述数据库用于存储工作流引擎的工作流流程数据,所述工作流引擎客户端通过数据处理接口与工作流引擎进行数据连接,所述数据库与工作流引擎数据连接。该工作流引擎具有高灵活性、高扩展性和高可用性,可以使企业的业务处理更快、更及时,提高了企业管理的效率。

【技术实现步骤摘要】
一种轻量级的分布式工作流引擎构建系统
本专利技术涉及引擎构建
,尤其涉及一种轻量级的分布式工作流引擎构建系统。
技术介绍
工作流是计算机应用程序下的整个或部分业务流程的自动化,为了实现业务目标,根据某些预定规则在多个参与者之间自动传递任务、文档或信息。工作流的概念起源于生产组织和办公室业务自动化领域,随着计算机和企业中计算机应用程序的日益普及,相关人员希望在无纸化、计算机支持的工作环境中进行日常业务工作。人们将具有固定程序的工作进行流程固化和拆分,并把流程拆分后的任务分配给不同角色的人员,然后按序执行。工作流技术的应用提高了企业管理效率和运营成本,使得企业更具竞争力。工作流引擎主要负责流程的操作和流程数据的维护,并为上层业务系统提供服务支撑。当多个业务系统同时访问引擎时,会导致引擎数据查询和维护难度成倍增加。主要表现在当流程部署的数量达到一定规模时,任务、流程实例和附言数据会大量积累,数据处理和查询期间检索效率会降低。在企业信息化系统中,工作流引擎处于核心地位,是系统的任务调度器和资源分配器,但是,由于企业业务复杂多变的特性,传统的工作流系统在支撑企业业务处理时仍存在一些缺陷,主要表现为架构复杂,可伸缩性、灵活性和可用性较低,且难于与业用系统进行集成。因此,业务系统基于工作流产品进行业务开发时难度很大,业务数据处理也及其复杂。传统的工作流产品多采用单体架构进行系统开发,对业务流程数据进行集中处理。虽然这种方式在初期有利于工作流管理系统的快速构建、运行和维护,但是随着业务数量和复杂需求的激增,系统无法灵活扩展、运行效率不高、与业务系统集成难度高和数据管理困难等重大缺陷也随之出现。
技术实现思路
鉴以此,本专利技术的目的在于提供一种轻量级的分布式工作流引擎构建系统,以解决现有技术出现的上述问题。一种轻量级的分布式工作流引擎构建系统,包括工作流引擎、工作流引擎客户端和数据库,所述工作流引擎用于工作流流程处理和工作流流程数据维护,所述工作流引擎客户端用于给工作流引擎发送用户工作流实例,所述数据库用于存储工作流引擎的工作流流程数据,所述工作流引擎客户端通过数据处理接口与工作流引擎进行数据连接,所述数据库与工作流引擎数据连接。进一步的,所述工作流引擎包括工作流执行模块、工作流模型构建模块和工作流异常处理模块,所述工作流执行模块用于执行工作流实例,所述工作流模型构建模快用于对工作流程流程处理,所述工作流异常处理模块用于对工作流流程数据的维护。进一步的,所述工作流模型构建模块为基于状态图和活动图建模模块。进一步的,所述工作流异常处理模块包括忽略异常模块、重试模块、修改模块、后向恢复模块和修改模型模块。进一步的,所述数据库包括本地数据库和外部数据库,所述本地数据库与工作流引擎数据连接,所述外部数据库通过通讯模块与工作流引擎数据连接。进一步的,所述工作流执行模块包括流程解析器、流程管理器、任务分配器、路由控制器和执行器。进一步的,所述工作流引擎用于实现以下步骤:S1:用户通过工作流引擎客户端启动某个工作流实例;S2:工作流引擎从数据库或XML文件中读取对应的工作流模型;S3:当用户对某个节点操作完成,工作流引擎决定该工作流实例的流转方向,决定下一个操作节点以及该节点可操作的角色,直到该实例流转结束。进一步的,还包括外部建模工具,所述外部建模工具与工作流引擎数据连接。进一步的,分布式工作流引擎保留了原来的工作流引擎进行本地处理,增加一个主控引擎来管理模型的分配、控制台服务及远程访问。与现有技术相比,本专利技术的有益效果是:本专利技术提供一种轻量级的分布式工作流引擎构建系统,用户通过工作流引擎客户端给工作流引擎发送工作流实例,工作引擎对工作流实例进行优化处理,采用轻量化的设计原理,即工作流引擎只需要实现必要的功能,而无需过多追求复杂的结构,重点是提高引擎的执行效率和灵活程度,工作流引擎的各模块相互协调,构建出一个高灵活性、高扩展性和高可用性的工作流引擎,简化了系统结构和数据库的复杂度,单个工作流实例允许在多个服务器和客户端之间进行并行计算和资源共享,执行效率将进一步提高,使企业的业务处理更快、更及时,提高了企业管理的效率。附图说明为了更清楚地说明本专利技术实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的优选实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1是本专利技术实施例一提供的一种轻量级的分布式工作流引擎构建系统的系统流程图。图2是本专利技术实施例一提供的一种轻量级的分布式工作流引擎构建系统的系统流程图。具体实施方式以下结合附图对本专利技术的原理和特征进行描述,所列举实施例只用于解释本专利技术,并非用于限定本专利技术的范围。实施例一参照图1和图2,本专利技术提供一种轻量级的分布式工作流引擎构建系统,包括工作流引擎、工作流引擎客户端和数据库,所述工作流引擎用于工作流流程处理和工作流流程数据维护,所述工作流引擎客户端用于给工作流引擎发送用户工作流实例,所述数据库用于存储工作流引擎的工作流流程数据,所述工作流引擎客户端通过数据处理接口与工作流引擎进行数据连接,所述数据库与工作流引擎数据连接;工作流引擎客户端负责管理工作流工作项列表,并完成与最终用户的交互,工作项列表管理器可以作为工作流管理系统的一部分提供给用户,也可以是用户自己编写的程序。所述工作流引擎包括工作流执行模块、工作流模型构建模块和工作流异常处理模块,所述工作流模型构建模快用于对工作流程流程处理,所述工作流异常处理模块用于对工作流流程数据的维护,工作流引擎将工作流模型作为依据,驱动工作流实例的正确流转,即从一个工作流实例开始,执行,到结束,整个过程中控制该实例中各个活动的执行。工作流实例中的每一个活动都有其对应的操作角色,实例流转到某一个活动时,该活动就由它对应的角色人员进行操作,而其他角色人员不得参与该活动的操作。某个活动操作完毕,则根据操作结果,决定实例的流转方向,不断重复上述过程直到该实例结束。所述工作流模型构建模块为基于状态图和活动图建模模块,活动图是一种有向图,它用标有数据信息的有向弧来表示活动间的数据流,状态图则反映了系统的动态行为,因而适于描述工作流中各活动间的控制流程。状态图本质上讲是一个有限状态机,它有明确的起始和终止状态,而状态间的转移则是通过一一,来驱动的。这样从不同的角度去描述模型可以很好的使不同的人员更好的描述系统。所述工作流异常处理模块包括忽略异常模块、重试模块、修改模块、后向恢复模块和修改模型模块,忽略异常模块可以忽略出现的异常,即对工作流流程的正确执行没有影响或者影响可以忽略。这种情况下系统可以由异常处理状态直接回到正常运行状态;重试模块可以对出错的任务重新执行,直到任务运行正确完成或者超过了设定的最大重试次数,重试过程中用户可能采取了其他一些外部操作,如恢本文档来自技高网
...

【技术保护点】
1.一种轻量级的分布式工作流引擎构建系统,其特征在于,包括工作流引擎、工作流引擎客户端和数据库,所述工作流引擎用于工作流流程处理和工作流流程数据维护,所述工作流引擎客户端用于给工作流引擎发送用户工作流实例,所述数据库用于存储工作流引擎的工作流流程数据,所述工作流引擎客户端通过数据处理接口与工作流引擎进行数据连接,所述数据库与工作流引擎数据连接。/n

【技术特征摘要】
1.一种轻量级的分布式工作流引擎构建系统,其特征在于,包括工作流引擎、工作流引擎客户端和数据库,所述工作流引擎用于工作流流程处理和工作流流程数据维护,所述工作流引擎客户端用于给工作流引擎发送用户工作流实例,所述数据库用于存储工作流引擎的工作流流程数据,所述工作流引擎客户端通过数据处理接口与工作流引擎进行数据连接,所述数据库与工作流引擎数据连接。


2.根据权利要求1所述的一种轻量级的分布式工作流引擎构建系统,其特征在于,所述工作流引擎包括工作流执行模块、工作流模型构建模块和工作流异常处理模块,所述工作流执行模块用于执行工作流实例,所述工作流模型构建模快用于对工作流程流程处理,所述工作流异常处理模块用于对工作流流程数据的维护。


3.根据权利要求2所述的一种轻量级的分布式工作流引擎构建系统,其特征在于,所述工作流模型构建模块为基于状态图和活动图建模模块。


4.根据权利要求2所述的一种轻量级的分布式工作流引擎构建系统,其特征在于,所述工作流异常处理模块包括忽略异常模块、重试模块、修改模块、后向恢复模块和修改模型模块。


5.根据权利要求1所述的一种轻量级的分布式工作流引擎构建系...

【专利技术属性】
技术研发人员:陈余胡微王鹏王保强陈文博
申请(专利权)人:南方电网海南数字电网研究院有限公司
类型:发明
国别省市:海南;46

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1