【技术实现步骤摘要】
一种工作流引擎及其实现方法
本申请实施例涉及计算机
,具体涉及一种工作流引擎及其实现方法。
技术介绍
工作流就是按照某种预先设置的流程在多个参与者之间传递文档、信息或任务的过程。实现工作流的核心,就是工作流引擎,或称为流程引擎,它为流程的定义和解释、信息传递的方式和路径、角色的分工和条件等提供实现。工作流节点,是流程中的一个步骤或环节,一般与应用系统中的一项应用相对应,通过工作流引擎可以将一个或多个工作流节点连接起来形成工作流。在现有技术中,商用的工作流引擎产品大部分采用独立式的应用模式,独立式是指工作流引擎独立地部署在进程或服务器上,需要通过远程调用的方式进行工作流节点和工作流引擎的交互。工作流引擎在Web应用的场景下,工作流引擎需要部署在Web服务器端,这种独立式工作流引擎的实现方式需要较大的网络通信开销,工作流的执行过程需要部署在Web服务器端的工作流引擎远程与运行在客户端上的工作流节点交互,带宽成本较高、网络延时较长,另外服务器负载压力较大。
技术实现思路
为此,本申请实施例提供一种 ...
【技术保护点】
1.一种工作流引擎实现方法,其特征在于,所述方法包括:/n接收业务系统的访问请求消息;/n根据所述访问请求消息调用工作流,以获取和处理流程数据;/n根据不同的切分策略将所述流程数据水平切分为不同的分库数据;/n将所述不同的分库数据发送到数据库代理层,以使得所述数据库代理层将所述不同的分库数据转发到不同的数据库节点中执行。/n
【技术特征摘要】
1.一种工作流引擎实现方法,其特征在于,所述方法包括:
接收业务系统的访问请求消息;
根据所述访问请求消息调用工作流,以获取和处理流程数据;
根据不同的切分策略将所述流程数据水平切分为不同的分库数据;
将所述不同的分库数据发送到数据库代理层,以使得所述数据库代理层将所述不同的分库数据转发到不同的数据库节点中执行。
2.如权利要求1所述的方法,其特征在于,所述不同的切分策略包括按地区拆分、哈希拆分和时间拆分;
所述按地区拆分是将同一地区的数据归到同一个数据库节点中;
所述哈希拆分是对流程实例ID进行哈希运算并按数据库节点数N取模,将运算结果相同的流程实例ID归到同一个数据库节点中,N为大于1的整数;
所述时间拆分是对流程数据按照自然月进行拆分,将流程发起时间在相同自然月的数据归到同一个数据库节点中。
3.如权利要求1所述的方法,其特征在于,所述流程数据包括执行SQL语句;所述分库数据为分库SQL语句。
4.如权利要求2至3任一项所述的方法,其特征在于,所述按地区拆分是在所述执行SQL语句的插入内容中添加地区编号字段,以及所述执行SQL语句过滤条件中增加地区编号;
所述哈希拆分的所述执行SQL语句的过滤条件是取模后的值;
所述时间拆分的所述执行SQL语句的过滤条件是自然月月份。
5.如权利要求1所述的方法,其特征在于,所述数据库代理层是基于MyCat开源中间件创建。
6.一种工作流引擎,其特征在于,所述...
【专利技术属性】
技术研发人员:黄继源,李新胜,李泉芳,
申请(专利权)人:天阳宏业科技股份有限公司,
类型:发明
国别省市:北京;11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。