You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何禁用Azure Service Bus队列REST API的阻塞等待,实现即时响应?

解决方案:禁用Azure Service Bus REST接口的空队列阻塞等待

可以通过在REST请求URL中添加timeout=0查询参数,实现队列为空时立即返回响应,完全禁用阻塞等待。

具体操作方式

  • 原请求URL:XX://XXX.servicebus.windows.net/{high|medium|low}/messages/head
  • 修改后的URL:XX://XXX.servicebus.windows.net/{high|medium|low}/messages/head?timeout=0

原理说明

Azure Service Bus的REST接收类接口(包括/messages/head)默认启用长轮询机制,当队列为空时会最多等待5秒(就是你遇到的阻塞时长),期间若有消息入队则立即返回。将timeout设为0后,接口会跳过等待逻辑,直接检查队列状态:

  • 队列有消息:正常返回消息内容
  • 队列无消息:立即返回404 Not Found响应

注意事项

  • 该参数对高、中、低三个优先级队列的接口均生效,每个队列的请求可独立设置
  • 需确保你的Worker处理逻辑能正确捕获404响应,然后自动切换至下一个优先级的队列继续检查

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.08 16:44:55