Skip to content

异步执行低代码工作流

异步任务用于在主工作流中触发一个后台工作流实例,而不等待其完整执行结束。适合视频生成、大文件处理、长时间数据分析、第三方系统轮询等耗时场景。

运行模型

异步执行分为两个配置层:

  1. 任务中心创建异步任务,绑定实际执行业务的工作流。
  2. 在主工作流中添加异步任务节点,选择已创建的异步任务并映射入参。

每次异步任务节点触发都会创建独立实例。主工作流只负责发起任务并继续执行,不应把后台结果当作当前节点的同步返回值。

创建异步任务

  1. 在工作台左侧进入任务中心
  2. 单击右上角创建任务,选择异步任务
  3. 输入任务名称。
  4. 选择资源库或应用中的工作流作为任务对象。
  5. 保存任务。
创建异步任务页面,填写任务名称并选择工作流任务对象

无法选择工作流时,检查当前用户权限、工作空间和工作流发布状态。

在工作流中触发

  1. 打开负责触发的主工作流。
  2. 添加异步任务节点。
  3. 选择已创建的异步任务。
  4. 将上游变量映射为异步任务目标工作流的输入。
  5. 为提交失败、参数错误和权限错误配置处理分支。
  6. 试运行主工作流,确认能够创建异步实例。

异步任务节点创建实例成功,只表示任务已经提交,不表示后台业务已经完成。

查看任务实例

在任务中心切换到异步任务页签。空状态会直接说明创建、触发和查看实例的完整关系。

任务中心异步任务页签,展示选择任务对象、执行异步任务和查看实例的流程

存在实例后,应重点查看:

  • 实例状态和创建时间。
  • 触发来源和任务对象。
  • 输入参数摘要。
  • 后台工作流运行记录。
  • 失败原因、重试结果和最终输出。

与批量任务组合

批量任务可以执行一个包含异步任务节点的主工作流,从而为每一行数据创建独立的后台实例。使用这种组合时要注意:

  • 批量任务成功可能只表示异步实例创建成功。
  • 后台实例仍受并发、队列和套餐额度限制。
  • 必须使用业务幂等键避免重复创建任务。
  • 需要在任务中心分别跟踪批量任务和异步实例。
  • 不要用高频轮询代替任务状态回调或合理的状态查询间隔。

常见问题

主工作流成功,但业务结果还没生成

这是异步语义的正常表现。到异步任务实例中查看后台工作流状态。

异步任务节点无法选择目标

先在任务中心创建异步任务,并确认任务对象对当前工作空间和用户可见。

重试会不会重复执行

可能会。对数据库写入、通知、生成文件等副作用操作必须设计幂等键,并在业务层记录任务实例与业务对象的对应关系。

何时不该使用异步任务

如果调用方必须立即取得最终结果,或流程耗时很短且同步链路稳定,直接运行工作流更简单。异步化会增加状态跟踪、结果获取和幂等处理成本。