キューと信頼できるセッションは、信頼性の高いメッセージングを実装する Windows Communication Foundation (WCF) 機能です。 このトピックでは、WCF の信頼性の高いメッセージング機能について説明します。
信頼できるメッセージング とは、信頼できるメッセージング ソース ( ソースと呼ばれます) が、信頼できるメッセージングの宛先 ( 宛先と呼ばれる) にメッセージを確実に転送する方法です。
Reliable Messaging では、次の機能が実行されます。
メッセージ転送またはトランスポートエラーに関係なく、送信元から送信先に送信されたメッセージの保証を転送します。
ソースと宛先を相互に分離します。 これにより、送信元と宛先の独立した障害と回復、および送信元または送信先が使用できない場合でも、メッセージの信頼性の高い転送と配信が提供されます。
信頼性の高いメッセージングは、待ち時間が長くなるというコストが頻繁に発生します。 待機時間 は、メッセージがソースから宛先に到達するまでにかかる時間です。 そのため、WCF では、次の種類の信頼性の高いメッセージングが提供されます。
高待機時間のコストなしで信頼性の高い転送を提供する Reliable Sessions。
WCF のキュー。信頼できる転送と、ソースと宛先の間の分離の両方を提供します。
信頼性のあるセッション
信頼できるセッションは、メッセージング (送信元と送信先) エンドポイントを分離する中継局の数や種類に関係なく、WS-Reliable メッセージング プロトコルを使用して、送信元と送信先の間でメッセージをエンドツーエンドで信頼できる転送を提供します。 これには、SOAP を使用しないトランスポート中継局 (HTTP プロキシなど) や、メッセージがエンドポイント間を流れるのに必要な SOAP (SOAP ベースのルーターやブリッジなど) を使用する中継局が含まれます。 メモリ内転送ウィンドウを使用することで、信頼セッションはSOAPメッセージレベルの障害を隠し、転送障害が発生した場合に接続を再構築します。
信頼できるセッションは、待機時間の短い信頼性の高いメッセージ転送を提供します。 プロキシまたは中継局に対して SOAP メッセージを提供します。これは、TCP が IP ブリッジ経由のパケットに対して提供するメッセージと同等です。 信頼できるセッションの詳細については、「信頼できる セッション」を参照してください。
待ち行列
WCF のキューは、メッセージの信頼性の高い転送と、待機時間の長いコストでソースと宛先の間の分離の両方を提供します。 WCF キュー通信は、メッセージ キュー (MSMQ) 上に構築されます。
MSMQ は、Windows にオプションのコンポーネントとして付属しています。 MSMQ サービスは Windows サービスとして実行されます。 ソースに代わって伝送キュー内の送信用のメッセージをキャプチャし、ターゲット キューに配信します。 ターゲット キューは、宛先がメッセージを要求するたびに、後で配信するために宛先に代わってメッセージを受け入れます。 MSMQ マネージャーは、メッセージが転送で失われないように、信頼性の高いメッセージ転送プロトコルを実装します。 プロトコルは、ネイティブまたは SOAP Reliable Messaging Protocol (SRMP) と呼ばれる SOAP ベースのプロトコルにすることができます。
分離は、キュー間の信頼性の高いメッセージ転送と組み合わせて、疎結合されたアプリケーションが確実に通信できるようにします。 信頼できるセッションとは異なり、ソースと宛先を同時に実行する必要はありません。 これにより、ソースのメッセージ生成率とメッセージ消費量の送信先のレートが一致しない場合に、キューが実際に読み込み平準化メカニズムとして使用されるシナリオが暗黙的に可能になります。 キューの詳細については、「 WCF のキュー」を参照してください。