Rubyで書かれたアプリケーションがあり、複数のスレッドがそれぞれリモートのAMQPエンドポイントに要求を送信します。これらのスレッドは、新しいタスクを実行する必要があるときに、時々生成されます。RabbitMQ:メッセージをスレッドにルーティングする
リクエストに応答を送信するためにスレッドごとに一時的な排他的キューを使用すると、このRubyサービスで受信メッセージを処理するコードを書くのが容易になります。キューは、関連するチャネルが閉じられるとすぐに削除され、目的が終了した後には固執しません。私はすべての考えることができる
選択肢は、リスナー・スレッドはRubyのサービスにすべての着信メッセージ/応答を受け取る1つ以上のキューに耳を傾け、その後、いくつかのメッセージ識別子を使用して待機しているスレッドにこれらのメッセージをルーティングする必要があります。これはもっと複雑に思え、必要なセマンティックルーティングにはRabbitMQを使用できません。
最初のモデルはAMQP通信の実行可能なモデルですか?このケースを処理するためのより良いパターンはありますか?