[发明专利]一种基于服务于微服务架构系统的工作流处理方法有效
申请号: | 202010679651.3 | 申请日: | 2020-07-15 |
公开(公告)号: | CN111858001B | 公开(公告)日: | 2021-02-26 |
发明(设计)人: | 阳朋;李耀;田骏;石龙 | 申请(专利权)人: | 武汉众邦银行股份有限公司 |
主分类号: | G06F9/48 | 分类号: | G06F9/48;G06F9/54;G06F11/30 |
代理公司: | 成都正煜知识产权代理事务所(普通合伙) 51312 | 代理人: | 李龙 |
地址: | 432200 湖北省武汉市黄陂区盘龙城经济开发区汉*** | 国省代码: | 湖北;42 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 服务 微服 架构 系统 工作流 处理 方法 | ||
1.一种基于服务于微服务架构系统的工作流处理方法,其特征在于,包括以下步骤:
步骤1:在微服务系统中部署一个单独的工作流微服务管理节点,该工作流微服务管理节点将管理该微服务系统中其他所有微服务应用节点的工作流相关的工作量调度和流程处理;
步骤2:当用户在各个微服务应用节点上对流程进行新增、修改、删除动作后,工作流微服务管理节点会将新的流程定义文件在微服务系统中进行广播,由其他微服务应用节点进行接收和处理;
步骤3:对于微服务应用节点的工作流,工作流微服务管理节点为微服务应用节点提供的流程引擎会自动将上一个微服务应用节点的工作流节点的任务数据传输至下一个微服务应用节点的对应的工作流节点,然后所述的下一微服务应用节点的流程引擎进行工作流任务的处理;
步骤4:各个微服务应用节点处理完工作流后,流程引擎会将相关状态异步发送给工作流微服务管理节点,工作流微服务管理节点收集到工作流状态后进行整理存档,用户可以在工作流微服务管理节点对流程进行事后回溯和实时监控;
步骤1具体包括:
步骤1.1:工作流微服务管理节点作为一个单独的服务发布到微服务系统,同时将该服务注册到微服务的注册中心,用于工作流服务查找和调用;
该工作流微服务管理节点实现如下:
1.1.1.统一管理工作流流程定义和节点规则设置视图,统一存储和管理流程定义文件;
工作流微服务管理节点提供独立的web管理台,用户在管理台通过拖拽、修改配置的方式来配置工作流,配置时需要设置各个工作流节点的调用逻辑和各个工作流节点所在的服务名;配置完成后工作流微服务管理节点会生成流程定义文件;流程定义文件创建成功后首先会保存在工作流微服务管理节点的内存数据库中,然后再同步给相关的微服务应用节点;
1.1.2 使用主从模式部署:
工作流微服务应用节点采用多节点部署,各个节点之间通过选举算法确定一个工作流主节点,同一时间只有工作流主节点在提供服务,当工作流主节点出现故障时会重新选举另外一个工作流子节点作为工作流主节点;
1.1.3.使用redis作为分布式内存数据库,在工作流定义完成之后,将流程定义文件序列化后保存在redis中,以提高流程文件同步的效率;
步骤1.2:工作流微服务管理节点将流程引擎的流程同步、流程监控方法打包成jar文件,供给其他服务进行调用。
2.根据权利要求1所述的一种基于服务于微服务架构系统的工作流处理方法,其特征在于:
对于修改操作,工作流微服务管理节点会记录相应的版本号,然后将最新的流程定义文件同步给相关的微服务应用节点;
对于删除操作,工作流微服务管理节点不会删除该流程定义文件,而是将其打一个标志,置为“无效”,然后将对应的状态同步到相关的微服务应用节点。
3.根据权利要求1所述的一种基于服务于微服务架构系统的工作流处理方法,其特征在于,
流程定义文件存在修改和删除,则该微服务应用节点在流程文件同步成功之后会在本地内存存在多个流程定义对象,启动流程时流程引擎会默认根据流程id查找版本号最新的流程定义文件来发起流程,同时该流程的版本号会和流程id一起作为节点数据同步给下一个工作流节点;
对于置为失效的流程定义文件,若用户调用相关的流程启动的方法,流程引擎会抛出异常,流程发起失败;
在下一工作流节点,流程引擎会根据流程id和版本号一起查找对应的流程,也就是说,对于在已经发起之后再修改和删除的流程,流程引擎会根据发起时的流程id和版本号找到对应的流程进行处理,直到流程终止。
4.根据权利要求1所述的一种基于服务于微服务架构系统的工作流处理方法,其特征在于:步骤4具体包括以下步骤:
步骤4.1:各个微服务应用节点的流程引擎在节点任务处理完成之后,会将状态数据异步发送给工作流微服务管理节点进行记录;
步骤4.2:工作流微服务管理节点实时接收和整理各个微服务应用节点的流程处理状态,最终生成每个工作流的流程的流转状态,其中包括任务名称、每个实际处理节点所在的微服务应用节点、IP、流程处理开始时间、流程处理结束时间、任务处理人信息,监控到每个流程的处理状态和当前所在的节点,实现用户进行流程查找、状态监控和问题排查。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于武汉众邦银行股份有限公司,未经武汉众邦银行股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010679651.3/1.html,转载请声明来源钻瓜专利网。