You need to enable JavaScript to run this app. 单调度器搭配LocalExecutor部署时能否同时运行多个DAGs
优惠活动
大模型
产品
解决方案
定价
更多

单调度器搭配LocalExecutor部署时能否同时运行多个DAGs

单Scheduler + 单worker LocalExecutor 架构下的多DAG运行问题

首先给出明确结论:该架构下无法同时运行多个DAG的任务,同一时间仅能执行1个任务(不管该任务归属哪个DAG)

核心原因说明

  • LocalExecutor的运行逻辑是在Scheduler所在节点上通过fork子进程的方式执行任务,你配置的worker数量就是允许同时存在的任务执行子进程的上限
  • 当worker数固定为1时,整个集群的执行资源同一时间只能承载1个运行中的任务,其余所有待调度的任务(无论来自同一个DAG还是不同DAG)都会进入排队队列,等待当前任务执行完成、worker资源释放后才能被调度执行
  • 举个实际场景示例:你同时手动触发了DAG A和DAG B的运行,两个DAG的首个任务都进入待调度状态,Scheduler只会给其中一个任务分配唯一的worker资源,另一个任务必须等待前序任务执行结束后才会启动

容易混淆的点说明

很多人会把「Scheduler的调度能力」和「任务执行能力」搞混:单Scheduler完全可以同时识别、编排多个DAG的调度逻辑,只是因为执行层只有1个worker,调度后的任务没法并行运行,只能串行执行。如果你的需求是可以同时调度多个DAG、只是允许任务串行跑,那这个架构是可以满足的;如果需要多个DAG的任务同时并行跑,就需要调高LocalExecutor的worker数,或者切换到CeleryExecutor/KubernetesExecutor等支持多worker分布式部署的执行器。


内容的提问来源于stack exchange,提问作者gauraviitk392

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.16 11:54:02