微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

非持久订阅不会在 ServiceBus 上消失

如何解决非持久订阅不会在 ServiceBus 上消失

在春季,我使用 JMS 和 amqp 通过创建非持久订阅来侦听 Azure 服务总线主题。 我正在使用带有 @JmsListener 注释的方法主题订阅在我启动服务时创建,在我关闭时销毁。

但每隔一小时,警告日志条目说 amqp 令牌已过期。 然后创建另一个订阅,我的服务一直在收听主题,这个功能很好。 问题是之前的订阅,不再使用,没有销毁。

这会产生大量不应该存在的未使用订阅

我尝试过使用 spring containerFactoryazure-service-bus-jms 库,结果相同。

我想知道是否有办法让未使用的订阅在我关闭服务时像正在使用的订阅一样自动销毁。

解决方法

访问令牌刷新机制符合预期。 60 分钟是默认间隔。

对于未使用的订阅,如果订阅是非持久的,则应在 AMQP 链接断开(消费者断开连接)时由服务删除它们。 Azure ServiceBus 还有一种称为“空闲时自动删除”的机制,它会在这些订阅闲置和未使用 X 分钟后清理它们。总体而言,您可能无需担心它们,除非您因订阅未立即清理而遇到特定错误。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。