如何从完整的 KahaDb 持久性存储中恢复 ActiveMQ?
How to recover ActiveMQ from full KahaDb persistence store?
我使用 AMQ 5.9 时遇到网络问题,导致队列中的消息备份。我开始收到日志消息
"Usage (default:store:queue://myqueue:store) percentUsage=101% usage=6254005794, limit=6144430090, ...Stopping producer...to prevent flooding queue..)
我无法恢复并再次开始使用消息。
我尝试进入 activemq.xml 以增加我的最大存储使用量:
<systemUsage>
<systemUsage>
<storeUsage>
<storeUsage limit="15 gb" />
</storeUsage>
</systemUsage>
</systemUsage>
我也试过用
关闭流量控制
<policyEntry queue=">" producerFlowControl="false"/>
但我仍然收到相同的错误消息。
我有磁盘space。命令行上没有任何设置被覆盖。我该如何恢复和处理我的消息?
我最终找到了一种丑陋(但有效)的方法来解决这个问题。如果您通过 JMX (jconsole) 连接到 activemq,您可以导航到 mbean org.apache.activemq.Broker 并找到属性 StoreLimit。您可以在 JConsole 中手动增加此值,然后 activemq 将在不久之后重新启动消息处理。
我使用 AMQ 5.9 时遇到网络问题,导致队列中的消息备份。我开始收到日志消息
"Usage (default:store:queue://myqueue:store) percentUsage=101% usage=6254005794, limit=6144430090, ...Stopping producer...to prevent flooding queue..)
我无法恢复并再次开始使用消息。
我尝试进入 activemq.xml 以增加我的最大存储使用量:
<systemUsage>
<systemUsage>
<storeUsage>
<storeUsage limit="15 gb" />
</storeUsage>
</systemUsage>
</systemUsage>
我也试过用
关闭流量控制 <policyEntry queue=">" producerFlowControl="false"/>
但我仍然收到相同的错误消息。
我有磁盘space。命令行上没有任何设置被覆盖。我该如何恢复和处理我的消息?
我最终找到了一种丑陋(但有效)的方法来解决这个问题。如果您通过 JMX (jconsole) 连接到 activemq,您可以导航到 mbean org.apache.activemq.Broker 并找到属性 StoreLimit。您可以在 JConsole 中手动增加此值,然后 activemq 将在不久之后重新启动消息处理。