SQL Service 2005 Service Broker を初めて使用します。キューを作成し、会話を正常に開始しました。ただし、メッセージを「調整」したいのですが、その方法がわかりません。
メッセージは、マルチユーザー アプリケーションによって呼び出されるストアド プロシージャによって送信されます。20 人のユーザーがこの proc を 30 秒以内に 1 回ずつ呼び出すとします。送信する必要があるのは 1 回だけです。メッセージが過去 30 秒以内に送信されたかどうかを確認するには、proc から何らかの方法が必要だと思いますか? それを行う方法はありますか?
私が持っていた 1 つのアイデアは、要求キューのアクティブ化プロシージャが呼び出されたかどうかを示すメッセージを「応答」キューに送信することでした。次に、ストアド プロシージャ (ユーザー アプリによって呼び出される) で、その特定のメッセージが最近呼び出されたかどうかを確認します。問題は、これが応答キューを台無しにしたくないことです。メッセージが存在するかどうかを確認するために、(受信ではなく) キューを覗くことができますか?
または、私が求めていることを達成するためのより簡単な方法はありますか?