MSMQを使用してプライベートローカルキューに送信されたメッセージが実際に配信されたことをどのように確認しますか?私は特にリスナー(私の場合はC#サービス)が実行されていないため、配信が成功しないシナリオを考えています。MSMQ(C#)を使用したメッセージ配信の確認/確認
0
A
答えて
3
追加の手順を実行せずにキューに入ることが保証されます。 「実行していない受信者」のシナリオに対処するには、メッセージを処理するときに受信者をコーディングしてサーバーに戻す必要があります。元の送信者は、送信されたメッセージを追跡し、クライアントが受信したことを確認する責任があります。
これは、リモート処理またはWebサービスのシナリオではなく、MSMQを使用するかどうかを決定する際に行うべき決定の1つです。たとえば、緊急事態が発生したときに店舗のすべての店舗に通知するためのプロジェクトがありました(たとえば、製品リコール/食品安全性の問題)。リスニングを選択したので、送信者がリスナーの1人がリスンしていないことを示すエラーが表示された場合は、電話をかけて電話する必要があります。
覚えておいてください。
編集 - 明確化
私は本当に上記の2つのオプションが配りました。
- メッセージを受信したときに送信者にメッセージを送信するようにクライアントに指示します。
- remotingなどの別のオプションを使用して、クライアントが実行されているかどうかを検出してメッセージを受信できます。あなたは、メッセージがキューに到達したかどうかは、(正または負の確認応答を通じて)あなたは見つけることができますAcknowledgeTypeを指定することができ、メッセージを送信すると
1
常にキューに送信されます。
あなたのサービスがそれを受け取るために実行されていない場合、サービスが受信するまで辛抱強く待っています。
.Send()がクラッシュすることなく返されるため、キューに送信されていることがわかります。
1
1
を使用してこの情報を引き出すことができ、および/または待ち行列から受信されました。肯定応答はMSMQによってメッセージとしてAdministrativeQueueに送信されるので、そのプロパティをMessageオブジェクトに割り当ててください。
肯定応答の管理キューは、元のメッセージのIDである相関IDで確認できます。
関連する問題
- 1. MPIで非ブロッキング通信によるメッセージ確認を確認
- 2. メッセージの取得/受信者への確認メッセージの受信者または受信者への確認
- 3. angularjsパスワードの確認は、確認メッセージ
- 4. キーとタイプの返信確認メッセージ
- 5. 確認メッセージのハイパーリンクエイリアス
- 6. NServiceBusとメッセージの確認を正常に受信しました
- 7. PHPとJSで "メッセージ送信"確認ポップアップ
- 8. 確認メッセージSpringシェル
- 9. rails + jquery確認メッセージ
- 10. ブートボックスと確認メッセージ
- 11. window.print()の後の確認メッセージ
- 12. 確認メッセージを表示
- 13. フォームを送信した後の確認
- 14. 材料設計ライトエラーを使用してパスワード確認を確認
- 15. OpenSSL S_Serverを使用した着信SSLの確認
- 16. jqueryを使用した確認ボックス
- 17. 確認ダイアログJQueryを使用したラジオボタン
- 18. フォーム送信確認
- 19. AJAXを使用して新しいメッセージを確認する
- 20. Spring Cloud Stream Rabbit配信確認
- 21. RabbitMqからのメッセージの受信を確認しない
- 22. フォームを送信し、同じページに留まり、メッセージの確認
- 23. メッセージロギング、メッセージの発信元を確認しますか?
- 24. パスワードパスワード確認の確認
- 25. クレジットカードの確認と確認
- 26. パブリッシャーがメッセージを確認します
- 27. 新しいメッセージを確認する
- 28. aws sqsで受信メッセージを確認します
- 29. ユーザー名確認後の一致しない返信メッセージ
- 30. ajaxを使用せずに送信を確認するメッセージを表示する
ちょうど明確である、あなたは*レシーバーが実行していたかどうかを調べることです。違いがあります。 –
はい。それはまさに私が話しているシナリオです。 – David
はい、それは尋ねられたものではありません(IMHO)。これはMSMQではなく、アプリの完全性に関するものです。 –