【技术实现步骤摘要】
一种无状态化的工作流程实现方法
本专利技术涉及企业信息化以及工作流程有关的系统、平台、服务,具体公开了一种无状态化的工作流程实现方法。
技术介绍
随着数字技术的进步,以及信息化行业的高速发展,在企业信息化的相关领域中,各开发商、服务商普遍基于开源的工作流程引擎或开放的技术规范进行开发、封装、扩展相关的工作流程序。由于技术规范和开源架构往往要对工作流程和工作节点预先进行对象实例化,即对流程的开始、过程和结果进行整体定义、编码和封装,属于有状态业务服务计算,导致在进行分布部署、分布执行、集群和简化流程定义等工作中,需要进行大量的重新编译工作,从而增加了程序的复杂度、编译的工作量以及部署的难度,提高了运维的成本。另外由于工作流程的执行过程中,所有的状态均进行了实例化,当流程变化或调整时需要进行额外的状态维护,并且增加了重新实例化的开发和计算成本,同时整体系统稳定性也受到了一定影响。而现代企业的工作和业务流程的变化越来越频繁,时常调整工作流程成为了常态,不能适应这种变化将大大制约企业的发展。无状态服务是指一个服务在其生命周期内不依赖其他服务生命周期内的数据,那么这个服务被称为无状态服务,反之称为有状态服务。无状态服务将所有的数据都放在服务外部统一存储,业务端就变成了无状态服务的计算节点,从而使服务可以进行平滑的横向扩展,而所有的外部数据统一存储,无论是缓存、数据库、对象存储都有自身的分布式横向扩展机制。
技术实现思路
为了克服现有的工作流程对象实例化导致调整困难、成本偏高的问题,本专利技术提供一种无状态化的工作流程实现方法。本专利技术采用的技术方案是:一种无状态化的工 ...
【技术保护点】
1.一种无状态化的工作流程实现方法,其特征是,包含步骤如下:A1.定义节点,工作流程的每一个流程节点定义为一个节点,每个节点有独属于该节点的节点唯一标识,节点的开始条件定义为唯一状态值,唯一状态值在节点所属的工作流程中全局唯一,将判断节点是否开始执行的唯一状态值定义为节点的开始状态,将确定节点执行之后状态的唯一状态值定义为节点的结束状态;将每一个节点的用于控制该节点是否可以执行的判断值定义为节点的启用状态,启用状态包括开启和关闭;A2.建立业务实例,当工作流程执行新的业务流程时,建立对应的业务实例,每个业务实例有独属于该业务实例的业务唯一标识,业务实例包含信息包括:流程标识、流程实例标识、流程当前状态、当前节点标识、当前节点业务唯一标识、上一节点标识、上一节点业务唯一标识,业务实力的数据均保存在缓存或数据库中;A3.根据调用传入的当前节点唯一标识和当前节点业务唯一标识,从缓存或数据库读取包含该节点的流程实例,流程实例当前状态与当前节点的开始状态一致则执行,反之不执行;A4.将当前节点的运行中间、结果数据保存到缓存或数据库,所述的当前流程状态根据当前节点执行后的结束状体赋值,重复步骤A3 ...
【技术特征摘要】
1.一种无状态化的工作流程实现方法,其特征是,包含步骤如下:A1.定义节点,工作流程的每一个流程节点定义为一个节点,每个节点有独属于该节点的节点唯一标识,节点的开始条件定义为唯一状态值,唯一状态值在节点所属的工作流程中全局唯一,将判断节点是否开始执行的唯一状态值定义为节点的开始状态,将确定节点执行之后状态的唯一状态值定义为节点的结束状态;将每一个节点的用于控制该节点是否可以执行的判断值定义为节点的启用状态,启用状态包括开启和关闭;A2.建立业务实例,当工作流程执行新的业务流程时,建立对应的业务实例,每个业务实例有独属于该业务实例的业务唯一标识,业务实例包含信息包括:流程标识、流程实例标识、流程当前状态、当前节点标识、当前节点业务唯一标识、上一节点标识、上一节点业务唯一标识,业务实力的数据均保存在缓存或数据库中;A3.根据调用传入的...
【专利技术属性】
技术研发人员:李文威,袁志楠,
申请(专利权)人:佛山市众联成云科技有限公司,
类型:发明
国别省市:广东,44
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。