我有一个实时应用程序,由于某种原因停止处理消息。现在重启后,有3百万条消息堆积起来。看起来需要大约60个小时才能完成。我想清除所有消息。简单地运行“DELETE FROM ACTIVEMQ_MSGS”类型命令来删除消息是多么安全或危险?
答案 0 :(得分:1)
直接从持久存储中删除某些内容是不正确的。尝试使用通过 JMX 公开的API。
使用 jconsole 或类似工具连接到您的代理管理端口(如果未启用 - 请参阅下面的链接)。切换到 MBean 标签,然后: org.apache.activemq → your_instance_name →队列。然后,使用“清除”操作清理目标队列。
必须在代理中启用JMX 才能使用: http://activemq.apache.org/jmx.html