有关如何重组 rest api 调用以减少缓慢的建议

Advice on how to restructure rest api calls to reduce slowness

我编写了一个移动应用程序,需要调用 Camunda rest api 并在其唤醒时获取每个任务和流程实例变量。

Call process-instance with no params

For each process instance returned call task?processInstanceId=$processInstanceDetails.id

For each process instance returned call process-instance/$processInstanceDetails.id/variables

系统中大约有 80 个活动进程实例处于活动状态,它开始变得相当慢(15 秒)。

任何人都可以就任何可能的改进向我提出建议(除了让移动设备仅查询我还不想查看的某些流程实例 ID 之外)。

谢谢

你有很多前进的方向:

如果您的客户端语言支持异步结构,您可以并行进行 task/variable 调用。根据条件,在所有可能的世界中最好的情况下,与 161 相比,这将使您接近 2 个顺序网络操作。

您也可以将服务器端的 camunda REST api 作为姐妹。 在不产生网络开销的情况下查询任务和流程变量的流程引擎。您可以在一次调用中聚合所有结果并 return 它们。

您如何查询流程实例?如果它是通过流程定义 id 或键,你可以改为 query the tasks directly with the same parameters.