Как удалить привязку очереди из RabbitMQ?
Я использую RabbitMQ для маршрутизации сообщений заинтересованным подписчикам по темам. У каждого подписчика есть очередь, и я связываю очередь с интересующими его темами. Я бы хотел, чтобы пользователь мог удалить элемент из списка тем.
В моей настройке это потребовало бы "открепления" связанной темы от очереди этого пользователя.
Я использую pyamqplib, и я не вижу способа сделать это через объект канала. Это способ удалить ранее связанные ключи маршрутизации из очереди?
2 ответа
public void unsubscribe(String queuename, String topic) throws IOException
{
ConnectionFactory factory = new ConnectionFactory();
factory.setHost(MQ_HOST);
factory.setPort(MQ_PORT);
Connection connection = factory.newConnection();
Channel channel = connection.createChannel();
try
{
channel.exchangeDeclarePassive("Channel name");
channel.queueUnbind(queuename, "Channel name", topic);
}
finally
{
handleClose(connection, channel);
}
}
Работаете в Python?
Похоже, у Пика 0.13 есть метод unbind:
queue_unbind(queue, exchange=None, routing_key=None, arguments=None, callback=None)
2010-12-03 11:44