【发布时间】:2016-08-28 00:47:22
【问题描述】:
我想从队列中自动删除在指定时间内处于非活动状态的所有消息(当时没有新消息到达)。
我不想从代码中显式清空队列,也不想像 here 所述显式调用 purge。
here 描述的配置也不适合我的情况,因为它只会自动删除空队列,而我的队列不是空的。
是否有任何已知的 ActiveMQ 配置可以自动执行该任务?
【问题讨论】:
标签: jms activemq spring-jms jmstemplate
我想从队列中自动删除在指定时间内处于非活动状态的所有消息(当时没有新消息到达)。
我不想从代码中显式清空队列,也不想像 here 所述显式调用 purge。
here 描述的配置也不适合我的情况,因为它只会自动删除空队列,而我的队列不是空的。
是否有任何已知的 ActiveMQ 配置可以自动执行该任务?
【问题讨论】:
标签: jms activemq spring-jms jmstemplate
我从未有过这样的要求,我不知道 activemq 中是否存在这样的功能,但是,有两个选项您可能会感兴趣:
1) 如果您想清除非活动队列上的消息,因为它们不再相关,您可以设置每条消息的生存时间(生产者端的 setTimeToLive() 方法)
2) 如果您需要这种确切的行为,那么您可以开发自己的插件。实际上,activemq 代理是相当可扩展的(请参阅:http://activemq.apache.org/developing-plugins.html)
希望对你有帮助。
【讨论】: