私は一種のパブリッシュ/サブスクライブオブザーバー/リスナーデザインパターンを設計しました。ビジネスシステムは、あるタイプのメッセージAをリッスンするためにサブスクライブし、次に別のタイプのメッセージBをリッスンするためにサブスクライブを解除しました。
問題は、メッセージAとBを次々と受信するのが非常に速いため、Bメッセージがすでに受信されているときに、システムがBメッセージをリッスンするようにサブスクライブしていないことです。通知されました。
キューを使用してすべての着信メッセージを保存し、リスナーに通知された後でそれらを消費することを考えていました。
しかし、私はそのような問題の一般的な実装があるかどうか疑問に思いました。