10

RabbitMQを使用して、トピックごとに関心のあるサブスクライバーにメッセージをルーティングしています。各サブスクライバーにはキューがあり、関心のあるトピックにキューをバインドします。ユーザーがトピックリストからアイテムを削除できるようにします。

私の設定では、そのユーザーのキューからバインドされたトピックを「バインド解除」する必要があります。

pyamqplibを使用していますが、チャネルオブジェクトを介してこれを行う方法がわかりません。以前にバインドされたルーティングキーをキューから削除する方法はありますか?

4

3 に答える 3

5
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);
   }
}
于 2011-04-11T19:06:26.640 に答える
2

Python で作業していますか?

pika 0.13 にはunbind メソッドがあるように見えます:

queue_unbind(queue, exchange=None, routing_key=None, arguments=None, callback=None)
于 2019-03-03T17:56:07.147 に答える
1

これはしますか

AMQP (RabbitMQ) キューからメッセージを選択的に削除する方法は?

あなたの問題を解決しますか?

于 2010-12-03T11:44:35.883 に答える