java - 带有 HornetQ 的 JBoss 7 中 JMS 队列的 'durable' 属性的含义是什么?

标签 java jakarta-ee jms jboss7.x hornetq

在使用 HornetQ(基于 standalone-full.xml 配置)在 JBoss 7 上配置 JMS 队列期间,我注意到一个属性“持久”。

enter image description here

我浏览了几个来源,其中许多都表示队列始终是“持久的”,这意味着消息将始终被传送,即使潜在的接收者在发送时处于非 Activity 状态也是如此。

JBoss 7 HornetQ 中的这个属性是指临时队列吗?还是这个属性指的是某种非临时非持久队列?

最佳答案

我觉得“持久”这个词更适用于主题而不是队列。持久订阅是订阅者未运行时,订阅者的发布由消息提供者存储的订阅者。一旦订阅者激活,这些存储的消息将被传递给该订阅者。对于非持久订阅者,如果他们不活跃,将不会收到任何发布。

关于队列,消息会保留在队列中,直到有人收到它们或它们过期为止。消息可以是持久的,这意味着它们将在消息传递提供者的重启后继续存在,并且在消息传递提供者关闭时消息丢失的情况下是非持久的。

关于java - 带有 HornetQ 的 JBoss 7 中 JMS 队列的 'durable' 属性的含义是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13816718/

相关文章:

java - 创建 JPA native 查询很慢

java - 队列上的监听器拾取消息时的时间戳

java - Collection.sort(arraylist) 在函数中排序另一个 arraylist

java - 更新文本字段值

java - 有序流的状态过滤器

java - 在将消息添加到 jms 队列之前如何从 ESB 向发送者发送响应

java - 有关此用例的架构/设计的一些问题?

java - 具有继承的泛型

java - 以 XML 格式发送 blob 或字节数组

java - 使用 JAX-RS 和 Glassfish 进行 CDI 和资源注入(inject)