2017-10-05 5 views
1

複数のトピックを交換から単一のキューにバインドすることは可能ですか?例えば 私は交換を宣言し、をlog.verbose 3つのトピックを送信プロデューサー、 log.info log.errorウサギの春のクラウドストリームがトピックを単一のキューにバインドする

を持っていると私は自分のキューを宣言する2つのコンシューマを持っているにバインドしたいです交換。 最初の消費者は、最初の2つのトピックをサブスクライブしますlog.verboselog.infoと、もう1つはすべてのトピックにサブスクライブします。

消費者1の設定をこのように定義することはできますか?

spring.cloud.stream.bindings.input.destination=log 
spring.cloud.stream.rabbit.bindings.input.consumer.bindingRoutingKey=log.info,log.verbose 

enter image description here

答えて

1

あなたは現在、プロパティの設定によってそれを行うことはできませんが、手動で管理UI上の、またはにExchangeQueueBinding@Bean Sを追加することにより、いずれか、自分でバインディング秒を追加することができます応用。 2番目の@Binding beanを追加するだけでは、RabbitAdmin(アプリケーションが最初に起動され、キューが存在しないとき)のキューは存在しないため、単純に追加することはできません。

Spring AMQPリファレンスマニュアルのConfiguring the brokerを参照してください。

この手法は、キュー名が知られていないため、匿名の消費者(inputのために指定されていない...groupプロパティ)のために動作しません。

関連する問題