Share via


可靠的服務

佇列和可靠工作階段是實作可靠傳訊的 Windows Communication Foundation (WCF) 功能。 本主題說明 WCF 的可靠傳訊功能。

「可靠傳訊」是可靠傳訊來源 (稱為「來源」) 將訊息可靠地傳輸到可靠傳訊目的地 (稱為「目的地」) 的方式。

可信賴傳訊可執行下列功能:

  • 傳輸保證,保證無論是訊息傳輸或傳輸失敗,訊息都會從來源傳輸到目的地。

  • 區隔來源和目的地。 這樣可以讓來源和目的地所發生的失敗與復原不具相關性,並且提供可靠的訊息傳輸和傳遞,即使在來源或目的地無法使用的情況下也是如此。

可信賴傳訊通常會伴隨長延遲時間的發生。 「延遲」是訊息從來源到達目的地所需的時間。 因此,WCF 提供了下列幾種類型的可靠傳訊:

可靠工作階段

可靠工作階段使用 WS-Reliable Messaging 通訊協定提供來源和目的地之間的端對端可靠訊息傳輸,而不論個別傳訊端點 (來源和目的地) 之間媒介的類型或數目為何。 這包括不是使用 SOAP 的任何傳輸媒介 (例如,HTTP Proxy) 或使用 SOAP 的媒介 (例如,SOAP 架構的路由器或橋接器),而訊息在端點之間流動時需要這些媒介。 可靠工作階段會使用記憶體中傳輸視窗來遮罩 SOAP 訊息層級的失敗,並在發生傳輸失敗時重新建立連線。

可靠工作階段會提供短延遲時間的可信賴訊息傳輸。 它們可透過任何的 Proxy 或媒介提供 SOAP 訊息,而這相當於 TCP 透過 IP 橋接器為封包提供的內容。 如需可靠工作階段的詳細資訊,請參閱可靠工作階段

佇列

WCF 中的佇列會在高延遲的情況下,提供可靠傳輸並區隔來源和目的地。 WCF 佇列通訊是建置在訊息佇列 (MSMQ) 之上。

MSMQ 是 Windows 所附的選用元件。 MSMQ 服務會執行為 Windows 服務。 它會代表來源擷取傳輸佇列中要進行傳輸的訊息,並將該訊息傳遞至目標佇列。 目標佇列會代表目的地接受訊息,以便隨時因應目的地要求訊息而進行傳遞。 MSMQ 管理員會實作可信賴傳訊通訊協定,這樣訊息就不會在傳輸期間遺失。 此通訊協定可以是原生 (Native),或是稱為 SOAP Reliable Messaging Protocol (SRMP) 的 SOAP 架構通訊協定。

佇列之間的區隔性以及可信賴傳訊,可讓鬆散耦合的應用程式進行可靠的通訊。 與可靠工作階段不同的是,來源和目的地不需要同時執行。 這個特點促使當來源的訊息生產率與目的地的訊息消耗率不相同時,作用中的佇列會被用來當做負載撫平機制。 如需佇列的詳細資訊,請參閱 WCF 中的佇列

另請參閱