0

単一の rabbitTemplate インスタンスがあり、 rabbitTemplate.send(Message) を呼び出してメッセージを RabbitMQ サーバーに発行するとします。

ここでやりたいことは次のとおりです: 1. パブリッシャー ビューから、メッセージが RabbitMQ によって確実に受信されるようにする方法 2. コンシューマー側では、同じ rabbitTemplate を使用してスレッドでメッセージを受信し、他のスレッドでメッセージを手動で確認したいと考えています。

RabbitTemplate でメッセージを手動で確認する方法はありますか?

助けてくれてありがとう。

4

1 に答える 1

3
  1. RabbitMQ は非同期であるため、メッセージがブローカーで保護されるのを「待つ」方法はありません。パブリッシャーの確認を有効にして、メッセージがキューに配信されたことを確認できます。詳細については、ドキュメントを参照してください

  2. receive*()いずれかの方法を使用する場合、メッセージを手動で確認することはできません。execute()メソッドを使用してネイティブ API にドロップダウンする必要があります。コールバックで channel.basicGet(queue, false)、メッセージの受信を実行してからchannel.basicAck(deliveryTag).

于 2014-07-03T13:01:13.303 に答える