在WPS中明确提供了两种类型的流程:长流程(Macroflow,宏流)和短流程(Microflow,微流)。下面是如下的描述。
可以看到短流程运行在一个分布式事务里面,所以它持续的时间会比较短,所以它的状态也都是再内存中,一旦流程完成后事务提交,这个流程的所有状态就消失了。再里面可以使用setrollback来强制回滚。
而长流程则由很多的短流程构成,这儿WPS采用的是一种链式(Chained)事务模型,这种魔心就是上一个事务如果执行过程种没有问题,则再最后把下一步要做什么也一并作为上一个事务的一部分持久到数据库种,然后整体提交,如果提交成功,则下一步开始之心,否则系统回滚到上一次提交结束后的未定状态。
我们以下面的例子为例:
一个包含人工任务的流程,
缺省是4个事务,这儿三个事务。
画一个图。表示是无边界
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/21856115/viewspace-605836/
,如需转载,请注明出处,否则将追究法律责任。