Azure 应用服务使用服务总线队列消息,即使它已停止

Azure App Service consumes service bus queue messages even though it's stopped

我有一个服务总线队列(分区和启用会话),应用程序服务内的 Web 作业正在从中使用消息。消息的实际处理停止后,我收到了一个异常,但队列中消息的使用没有停止。

然后我

  1. 停止了网络作业
  2. 已停止应用服务
  3. 停用队列
  4. 检查了 Kudu 下的 运行 个进程 - none 与我的网络作业相关

但消息仍然被消费

我真的必须删除容器(应用服务)吗? (我不想这样做,因为上面有几个 webjobs 运行,因此有几个部署流程。)

如果有人有同样的经历,或者任何人都可以发出任何光芒,我将不胜感激。

此致

只要 service/web 作业关闭就意味着您的队列消息不会被该资源消耗。

我建议您查找:

  1. 不同的环境(如 test/staging),您的 Web 作业是 运行,但由于配置错误,它们订阅了错误的队列并使用了您的消息。
  2. 运行 在您或您的任何同事本地申请。默认情况下,Azure 在访问策略方面的策略非常薄弱。您可以通过本地环境默认连接到 azure 服务总线。
  3. 队列中的消息过期。在 Azure 服务总线中,默认 TTL(生存时间)为 14 天。在这种情况下,您会看到消息消失,但这并不意味着它们已被消耗。