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

Node.js Azure Functions如何设置Azure Service Bus错误重试间隔

配置报错及重试设置解决方案

报错原因

Property retryOptions is not allowed报错是由于Azure Functions Service Bus扩展版本迭代后,配置结构发生了变更:旧版本的根节点retryOptions参数已被废弃,新版扩展(v5.x及以上)不再识别该配置项。

正确配置方法

全局重试配置(所有Service Bus触发函数共用)

在host.json文件中按如下结构配置,参数可根据实际需求调整:

{
  "version": "2.0",
  "extensions": {
    "serviceBus": {
      "retry": {
        "mode": "exponential",
        "maxRetryCount": 5,
        "minimumBackoff": "00:00:10",
        "maximumBackoff": "00:03:00"
      }
    }
  }
}
  • mode可选值为exponential(指数退避)、fixed(固定间隔)
  • minimumBackoff为最小重试间隔,可替换为你需要的时长,解决当前每秒重试的问题

单函数重试配置(仅对指定触发函数生效)

如果不需要全局生效,可在对应函数的function.json文件中添加重试配置:

{
  "bindings": [
    {
      "name": "sbMsg",
      "type": "serviceBusTrigger",
      "direction": "in",
      "queueName": "你的队列名",
      "connection": "ServiceBus连接字符串配置名",
      "retry": {
        "strategy": "exponentialBackoff",
        "maxRetryCount": 3,
        "minimumInterval": "00:00:10",
        "maximumInterval": "00:01:00"
      }
    }
  ]
}

生效及注意事项

  • 配置修改后需要重启Azure Functions运行时,或重新发布函数后才会生效
  • 若使用固定间隔重试,将mode改为fixed、strategy改为fixedDelay,直接指定interval参数即可
  • 重试达到最大次数后,消息会自动进入死信队列,可根据业务需求配置死信消息的处理逻辑

内容的提问来源于stack exchange,提问作者Henrique É.

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.08 06:39:03