一部のメッセージが別のメッセージの完了に依存しないシナリオがあります。したがって、一連のメッセージを処理するには、別のメッセージを最初に処理する必要があるという前提条件があります。前提条件メッセージは長時間実行されるプロセスであり、処理に最大 30 分かかる場合があります。
私が望むのは、前提条件が完了していないと感じたときにすべてのサブスクライバーから 5 分間メッセージを非表示にし、5 分後に再び使用可能になり、処理できない場合は次の 5 分間非表示にすることです。
セッションを使用できることがわかり、遅延が解決策になる可能性がありますが、そのようにしたくありません。そのため、遅延メッセージを非キュー ストレージに保持するためにストレージを維持する必要があります。
もう 1 つの方法は、メッセージに対してピーク ロックを実行し、それを放置してロックの有効期限が切れるのを待って、やがてキューに再表示されるようにすることです。
これを行うより良い方法はありますか?