2

私は現在、ユーザーが互いにプライベートにメッセージを送受信できるメッセージング サービスの構築を検討しています。マルチユーザー チャットが必要な場合もありますが、ほとんどの場合、1 人の受信者のみが送信されたメッセージを読むことができるようにしたいと考えています。

RabbitMQ を見ると、1 つの交換を使用し、ログイン時に各ユーザーのキューを作成し、ログアウト時に各キューを破棄することは理にかなっていますか? ユーザーごとにキューを作成する際に大きなパフォーマンス上の問題がありますか、それともより良い代替手段はありますか?

私は REST API を構築しており、ユーザーがエンドポイント (/send) を介して他のユーザーにメッセージを送信し、websockets または同様のものを介して独自のメッセージ ストリームにサブスクライブすることを計画しています。メッセージはおそらく MongoDB にも保存されるので、ユーザーは以前のすべてのメッセージにアクセスできます。構造に関する提案は大歓迎です。

4

1 に答える 1