如何使用 AMQP-CPP 库删除 RabbitMQ 中的所有队列

How to delete all the queues in RabbitMQ using AMQP-CPP library

我想使用 AMQP-CPP 库删除 RabbitMQ 服务器中存在的所有队列。

我在 AMQP-CPP 库中找不到任何提供 list of queues / deletes all the queues 存在的方法(如果我们没有指定队列名称)。

能否请您告诉我是否有任何可行的方法可以做到这一点?

AMQP 协议没有在代理中列出资源的方法。

使用RabbitMQ,可以使用管理插件提供的RESTAPI:

  • 列出所有虚拟主机的所有队列:

    GET /api/queues
    
  • 删除给定虚拟主机中的队列:

    DELETE /api/queues/$vhost/$name
    

    这一步也可以使用 AMQP 完成。

有关详细信息,请参阅 complete list of REST endpoints