【发布时间】:2016-09-25 08:02:19
【问题描述】:
我正在使用 ActiveMQ 5.8.0,我有一个队列,它不时接收消息并立即由该特定队列的侦听器处理,这里我希望队列在 24 小时后不立即处理消息,是在 Active MQ 中有任何参数可以做到这一点。
【问题讨论】:
标签: queue activemq message-queue
我正在使用 ActiveMQ 5.8.0,我有一个队列,它不时接收消息并立即由该特定队列的侦听器处理,这里我希望队列在 24 小时后不立即处理消息,是在 Active MQ 中有任何参数可以做到这一点。
【问题讨论】:
标签: queue activemq message-queue
与其让消费者使用延迟 24 小时的消息,我更愿意将消息放入队列并延迟 24 小时。
我们可以使用
long time = 24 hours in milliseconds;
message.setLongProperty(ScheduledMessage.AMQ_SCHEDULED_DELAY, time);
producer.send(message)
使用此配置后,ActiveMQ 将安排消息延迟 24 小时投递。
PS:你只需要检查一件小事,如果代理在消息传递之前宕机会发生什么,如果代理重新启动并再次运行,它是否会成功发送
希望这会有所帮助!
祝你好运!
【讨论】: