現在、RabbitMQ を評価しています。従来の DB ストア アンド グラブの代わりに、いくつかのプロセスをメッセージング アプリとして実装する最善の方法を決定しようとしています。これがシナリオです。同様のタスクを実行するユーザーの部門があります。ユーザーがサーバー アプリケーションに作業を送信するときに、サーバー アプリが、作業を送信したユーザーだけでなく、すべてのユーザーに対して、何が行われたかを示すメッセージを通知ウィンドウに送り返すようにします。これはすべて簡単です。
問題は、これらのメッセージを Queue でたとえば 4 時間存続させたいということです。新しいユーザーがログインするかスーパーバイザーと言うと、過去 4 時間のすべてのメッセージが通知ウィンドウに配信されます。これにより、「ジョンと話したことがありますか?」、「旅程について彼にメールしましたか?」などと他の人に尋ねることなく、最近何が起こったのか、何が起こっているのかを簡単に確認できます。
では、公開されてから x 時間の有効期間を持つメッセージを公開し、接続する新しいコンシューマーがこれらすべてのメッセージを時系列で配信されるようにするにはどうすればよいでしょうか? また、メッセージがキューから期限切れになった後、メッセージが消えてしまうことが望ましいです。
ありがとう