【问题标题】:How to delete all of the topics in ActiveMQ?如何删除 ActiveMQ 中的所有主题?
【发布时间】:2010-10-10 20:27:52
【问题描述】:

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

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

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

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

【问题讨论】:

    标签: activemq


    【解决方案1】:

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

    deleteAllMessagesOnStartup="true"
    

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

    玩得开心!

    【讨论】:

    • @NSA 我在哪里可以找到配置文件。
    • @NSA 我找到了它。并尝试了它的工作原理。如果您知道是否有此类提示的教程。建议我。
    • 在 >5.10 版本中我应该如何做到这一点
    【解决方案2】:

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

    <ActiveMQ_Installation_Directory>/data
    

    并删除其中的所有文件。

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

    【讨论】:

      【解决方案3】:

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

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2017-11-21
        • 2013-09-30
        • 2017-06-09
        • 2012-02-12
        • 2015-12-18
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多