17

我正在使用 pika 库使用 rabbitmctl。我使用下面的代码来创建一个 Producer

#!/usr/bin/env python
import pika
import time
import json
import datetime


connection = pika.BlockingConnection(pika.ConnectionParameters(
        host='localhost'))
channel = connection.channel()



channel.queue_declare(queue='hello')

def callback(ch, method, properties, body):
    #print " current time: %s "  % (str(int((time.time())*1000)))

    print body

channel.basic_consume(callback,
                      queue='hello',
                      no_ack=True)


channel.start_consuming()

由于我每次都创建一个现有队列(如果未创建队列,则覆盖创建队列)队列已因此而损坏。现在我想删除队列..我该怎么做?

4

3 回答 3

30

由于这似乎是一个维护过程,而不是您将在代码上例行执行的操作,您可能应该使用RabbitMQ 管理插件并从那里删除队列。

无论如何,您可以使用以下命令从 pika 中删除它:

channel.queue_delete(queue='hello')

https://pika.readthedocs.org/en/latest/modules/channel.html#pika.channel.Channel.queue_delete

于 2013-11-11T17:40:19.060 回答
6

详细答案如下(参考上面非常有帮助和有用的答案)

import pika


connection = pika.BlockingConnection(pika.ConnectionParameters(
               'localhost'))
channel = connection.channel()


channel.queue_delete(queue='hello')

connection.close()
于 2013-11-11T18:15:25.240 回答
2

GUI rabbitMQ mgm 没那么容易

$ sudo rabbitmq-plugins enable rabbitmq_management

http://localhost:15672/#/queues

用户名:客人

密码:访客


受此启发

于 2019-04-02T12:05:29.843 回答