【发布时间】:2015-01-25 11:31:56
【问题描述】:
我是activeMQ的新手,我想确保消费的消息正常处理并且没有任何问题,如果出现问题我不想丢失消息,在这种情况下我该怎么办?我应该将消息保存到数据库吗?如果出现问题,activeMQ 中是否有任何方法可以将消息保留在队列中?我尝试将消息保存到 mysql 数据库,然后手动调用消费者从数据库中读取,它可以工作,但我担心将来在数据库中有很大的记录并且读取速度很慢。
【问题讨论】:
标签: activemq
我是activeMQ的新手,我想确保消费的消息正常处理并且没有任何问题,如果出现问题我不想丢失消息,在这种情况下我该怎么办?我应该将消息保存到数据库吗?如果出现问题,activeMQ 中是否有任何方法可以将消息保留在队列中?我尝试将消息保存到 mysql 数据库,然后手动调用消费者从数据库中读取,它可以工作,但我担心将来在数据库中有很大的记录并且读取速度很慢。
【问题讨论】:
标签: activemq
准确地说,您正在寻找“死信队列”或 DLQ。
在消息处理过程中,如果出现问题,消息会自动传输到 ActiveMQ 提供的 Default DLQ,队列命名为activemq.DLQ。
您发送的消息应该是持久消息,以便它们存储在 DLQ 中。 如需更多参考,您可以在这里查看
希望这会有所帮助!
祝你好运!
【讨论】: