gpt4 book ai didi

jms - WMQ 主题是否保存消息本身?

转载 作者:行者123 更新时间:2023-12-04 19:09:59 25 4
gpt4 key购买 nike

如果一个发布者向一个MQ主题发布了一些消息,但是订阅者没有接受它,那么这些消息保存在哪里呢?有什么方法可以知道消息数吗?

最佳答案

由于 MQ 是 JMS 兼容的,所以答案主要是 JMS 答案。

  1. 如果订阅不是持久的并且没有注册订阅,则该订阅者的消息将被丢弃。
  2. 如果订阅是持久的,MQ 会创建一个队列(如果订阅者指定,则使用预定义的队列)来传递消息。如果订阅者没有使用消息,消息将收集在那里。
  3. 正如 Dave 在评论中指出的第三种情况,非持久订阅者保持订阅处于打开状态但不使用消息。由于创建了一个队列来接收这些队列深度,因此可以查询队列深度以确定是否有备份。

基于每个订阅(持久或其他)都有一个队列,只需查看持久订阅者的队列以确定未完成的消息数。

另请参阅 Publish/subscribe lifecycles 在 MQ 知识中心获取有关持久订阅者队列的行为和规范的更多描述。

当然,如果该队列填满,行为就会发生变化。根据设置,发布者阻止或发布继续,但消息被路由到异常队列(如果指定)、DLQ 或被丢弃。

感谢 Dave Ware 关于非持久订阅的评论。

关于jms - WMQ 主题是否保存消息本身?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39253628/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com