Groovy 具有大量多实例进程和就绪状态的Camunda引擎行为

Groovy 具有大量多实例进程和就绪状态的Camunda引擎行为,groovy,camunda,camunda-modeler,Groovy,Camunda,Camunda Modeler,我想知道Camunda如何管理子流程的多个实例。 对于示例此BPMN: 假设多实例过程将迭代一个大集合,500个实例 我在web应用程序中有一个函数,该函数调用端点以完成用户公共任务,并对camunda引擎执行另一个调用以获取所有任务(在第一次API调用时)。我应该得到500个子流程用户任务(由多实例流程生成的任务)的列表 如果在Camunda引擎成功实例化所有子流程之前执行了get tasks调用,该怎么办 我有任务的部分列表吗 如何检测主流程和子流程是否准备就绪 我真的不知道Camund

我想知道Camunda如何管理子流程的多个实例。 对于示例此BPMN:

假设多实例过程将迭代一个大集合,500个实例

我在web应用程序中有一个函数,该函数调用端点以完成
用户公共任务
,并对camunda引擎执行另一个调用以获取所有任务(在第一次API调用时)。我应该得到500个子流程用户任务(由多实例流程生成的任务)的列表

如果在Camunda引擎成功实例化所有子流程之前执行了
get tasks
调用,该怎么办

我有任务的部分列表吗

如何检测主流程和子流程是否准备就绪


我真的不知道Camunda是否能够自行解决这个问题,因此我想到了以下解决方案,因为我知道我只能使用Modeler环境和Groovy来添加代码(Javascript也是如此,但已经添加的整个代码部分都是Groovy):

  • 使用子进程抛出事件在主进程中捕获,然后计算并比较每个发出信号的已准备好的任务数和等待的任务数


感谢

我可能会将任务作为并行进程(或其中500个)生成,然后进入下一步,在该步骤中,我会发出信号或设置一个状态,指示生成已完成。我将进一步将所有并行进程再次连接在一起,并在这里设置一个任务信号或以其他方式设置一个状态,指示所有并行进程都已完成。看见通过这种方式,您可以确切地知道在什么时候(繁殖完成后和加入之前),您有机会获得500个繁殖子进程

这是蜘蛛感觉刺痛还是您有实际问题?我不知道Camunda的答案,但从Activiti推断,您可以指定一个事务管理器(您应该这样做,但很可能它已经是默认的),然后每个步骤要么全是,要么全是。如果卡蒙达能以任何不同的方式处理这个问题,我会感到惊讶。@cfrick这是我必须处理的事情,它可以很好地处理大量并行子进程,但我必须实例化许多其他主进程。我想知道卡蒙达是否能够处理要实例化的
nx500
任务。我来看看事务管理器。谢谢