turbo icon indicating copy to clipboard operation
turbo copied to clipboard

Question: 关于流程的执行逻辑

Open BeanWei opened this issue 2 years ago • 2 comments

感谢开源,代码逻辑非常清晰,让我这个不写 java 的人也能完整的看完整个逻辑。但是不太清楚怎么和具体的业务关联起来。

比如下面这个点我非常疑惑: 流程直到用户节点挂起或者结束节点完成 就会停下,如果说 审批人请求 commitTask 之后,后面要经过很长的节点才会到达下一个挂起的节点,那这个审批人岂不是要一直等?

BeanWei avatar May 01 '22 12:05 BeanWei

可以理解turbo提供的是底层流程驱动的能力,用户节点指的是异步交互节点,可以是由业务系统驱动也可以是表单对应的人机交互。举例说明:审批人点击通过后,由上层业务系统执行业务逻辑后驱动commitTask,是否会经过很长的节点取决于上层业务系统的业务逻辑,通常来说两次用户节点之间的耗时是非常短的。

liangchenhui avatar May 07 '22 04:05 liangchenhui

可以理解turbo提供的是底层流程驱动的能力,用户节点指的是异步交互节点,可以是由业务系统驱动也可以是表单对应的人机交互。举例说明:审批人点击通过后,由上层业务系统执行业务逻辑后驱动commitTask,是否会经过很长的节点取决于上层业务系统的业务逻辑,通常来说两次用户节点之间的耗时是非常短的。

感谢回复!你说的有道理。我又看了下 turbo 的表结构。turbo 专注于流程的执行,其他的业务逻辑交给业务方自行处理,业务逻辑可以依赖于 flow_instance_data 自由发挥。总的来说,很轻量,扩展性高。这也是 turbo 核心表只有5个的原因,可以适用于大多数流程的场景。

BeanWei avatar May 07 '22 04:05 BeanWei