1

キューに入れられたトランスポートを介して、あるプロセスから別のプロセスにメッセージを送信する既存のアプリケーションがあります。メッセージの処理を遅らせることでメッセージの処理方法を変更し、キューの先頭で最初に処理する必要のあるメッセージを使用して、キューを優先キューとして機能させたいと思います。

IE:

時間0で、メッセージAが15分の遅延でキューに送信されます。5分後、メッセージBが10分の遅延でキューに送信されます。その後、キューを処理しているサービスがクラッシュし、さらに15分間再起動されません。キューが再び処理を開始すると、メッセージBが一番上に表示され、その後にメッセージAが続きます。

C#/ MSMQ / .NETエコシステムにこのようなものはありますか?

4

1 に答える 1

1

Windows Azureでクラウドプログラミングを行っている場合は、これを処理する方法があります。visibilitytimeoutメッセージを入れるを指定するだけです。

http://msdn.microsoft.com/en-us/library/windowsazure/dd179346.aspxから:

可視性タイムアウト=

オプション。指定する場合は、2011-08-18以降のx-msバージョンを使用してリクエストを行う必要があります。指定しない場合、デフォルト値は0です。サーバー時間に対する新しい可視性タイムアウト値を秒単位で指定します。新しい値は0以上である必要があり、7日を超えることはできません。メッセージの可視性タイムアウトは、有効期限より後の値に設定することはできません。可視性タイムアウトは、存続時間の値よりも小さい値に設定する必要があります。

オプションの可視性タイムアウトは、メッセージが非表示になる時間を指定します。タイムアウトが経過すると、メッセージが表示されます。可視性タイムアウトが指定されていない場合、デフォルト値の0が使用されます。

于 2012-05-31T14:16:21.510 に答える