Azure Logic App超出最大等待运行数上限时,Blob触发事件如何处理?
Azure Logic App(标准版)Blob触发器等待队列溢出后的行为说明
当你设置Runtime.Trigger.MaximumRunConcurrency = 50(最大并发运行实例数)和Runtime.Trigger.MaximumWaitingRuns = 100(最大等待运行实例数)后,超出等待上限时的具体行为如下:
- 当等待队列中的待执行实例数达到100的上限时,触发器会暂时停止将新的Blob触发事件加入等待队列,此时新产生的Blob创建/修改事件不会立即进入执行流程。
- 对应的文件不会丢失:InApp类型的Blob触发器本质是定期扫描指定存储容器,只要Blob未被标记为已处理(默认基于Blob的创建/修改时间、ETag等标识判断),触发器后续扫描时会再次检测到这些未处理的Blob。一旦等待队列有空位(比如正在运行的实例执行完成,等待队列长度降到100以下),就会将这些Blob对应的触发事件加入队列并启动执行。
- 补充提示:如果你给触发器配置了自定义的“仅处理一次”策略(比如处理完成后修改Blob元数据标记),需确保该策略不会遗漏等待队列满期间产生的Blob;但默认情况下,触发器的扫描机制会保障未处理的Blob被重新检测到。
内容的提问来源于stack exchange,提问作者LStrike
相关产品推荐
相关产品推荐

