質問

私は、バインドされたキューを削除せずにRabbitMQの中のバインディングを削除したいです。私は0.8 AMQP仕様でtxAMQPを使用しています。 RabbitMQのはサポートしていますが、それはunbindメソッドを持っていない唯一のバージョンであるように思われる。

奇妙なことに、ソースコードを閲覧はRabbitMQのは、むしろ混乱します。

私を残す、アンバインドサポートしていることを示唆しています

私は、クライアントとサーバーの組み合わせをバインド解除することはできますか?もしそうなら、どのように?

役に立ちましたか?

解決

あなたが気づいてきたように、

、RabbitMQのは、いくつかのバージョンについては、今定義0-9仕様から持ち上げますが、すべてのAMQPクライアントライブラリが同じように拡張されていないと、拡張Queue.Unbind方式をサポートしてきました。

これはtxAMQPで動作するように取得するには、あなたは、0-9仕様からQueue.UnbindとQueue.UnbindOkメソッドのXML定義を取るtxAMQPが使用0-8 specファイルに貼り付け、再起動する必要があります。あなたの申請。私はきちんとtxAMQPがどのように機能するかを理解している場合、それは今、利用可能Queue.Unbindメソッドを持っている必要があります。

ここでは、BSDライセンス0-9-1スペックから、関連するXMLスタンザあります:

<method name="unbind" synchronous="1" index="50">
  <chassis name="server" implement="MUST"/>
  <response name="unbind-ok"/>
  <field name="reserved-1" type="short" reserved="1"/>
  <field name="queue" domain="queue-name"/>
  <field name="exchange" domain="exchange-name"/>
  <field name="routing-key" domain="shortstr"/>
  <field name="arguments" domain="table"/>
</method>
<method name="unbind-ok" synchronous="1" index="51">
  <chassis name="client" implement="MUST"/>
</method>
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top