7

我将 ActiveMQ 与 C# 客户端库一起使用。作为评估目的的测试的一部分,我创建了 10,000 个随机名称的主题,现在我无法摆脱这些主题。ActiveMQ 因如此多的主题而陷入停顿,因此我需要将它们排除在系统之外。到目前为止,这是我尝试过的,但都没有奏效。我将 ActiveMQ 作为 Windows 服务运行。

  • 删除 ACTIVEMQ_HOME\Data 中的所有文件和文件夹
  • 关闭所有持久性
  • 删除持久性文件夹中的所有文件和文件夹
  • 删除整个 ACTIVEMQ_HOME 目录并将其重新安装到不同的文件夹中

我跟踪了文件活动,找不到在创建或删除主题时写入的任何文件。

我意识到 .NET 客户端库对功能有点轻,所以我什至无法以编程方式获得所有主题的列表。

4

3 回答 3

20

转到您的代理配置文件,在代理元素上打开文件进行编辑,添加以下属性:

deleteAllMessagesOnStartup="true"

当您重新启动代理时,这将导致所有先前的主题和队列以及它们的待处理消息从您的 kaha 存储中删除。

玩得开心!

于 2009-04-13T21:34:15.487 回答
2

这个问题可能很老了,但是一个快速而简单的方法来完全清除 ActiveMQ 中的所有数据以及所有队列和主题是转到以下路径:

<ActiveMQ_Installation_Directory>/data

并删除其中的所有文件。

现在,一旦您重新启动 AMQ,它将以全新的、干净的安装方式启动。

于 2019-07-29T11:40:35.743 回答
-1

如果您将您的 activemq 版本升级到 5.8.0,您可以使用 REST API 来管理代理。但在 5.7.0 或更早的版本中,管理界面只能通过 java 环境下的 JMX 访问。

于 2013-08-12T12:14:19.403 回答