匯出 (0) 列印
全部展開

轉送和代理訊息

更新日期: 2014年4月

與 Microsoft Azure 服務匯流排 初始版本相關的訊息模式表示轉送訊息,但 服務匯流排 也支援代理訊息。代理訊息配置也可視為非同步訊息。

服務匯流排 的主要元件為集中式 (但高度負載平衡的) 轉送服務,可支援各種不同的傳輸通訊協定和 Web 服務標準。這包括 SOAP、WS-*,甚至是 REST。轉送服務提供各種不同的轉送連線功能選項,而且會在允許的情況下協助交涉直接進行對等連線。服務匯流排 為使用 Windows Communication Foundation (WCF) 的 .NET 開發人員在效能及使用性方面進行優化,透過 SOAP 和 REST 介面提供其轉送服務完整的存取。這讓所有 SOAP 或 REST 程式設計環境都能夠與它整合。

轉送服務支援傳統單向訊息、要求/回應訊息,以及對等訊息。它也支援網際網路領域上的事件發佈,可啟用發行/訂閱案例和雙向通訊端通訊,以提高點對點效率。在轉送訊息模式中,內部部署服務會透過輸出連接埠連線至轉送服務,並針對繫結至特定會合位址的通訊建立雙向通訊端。接著,用戶端可以透過將訊息傳送至目標為會合位址的轉送服務,與內部部署服務進行通訊。然後轉送服務會透過已就定位的雙向通訊端,將訊息「轉送」至內部部署服務。用戶端不需要與內部部署服務直接連線,也不需要知道服務位於何處,而且內部部署服務不需要在防火牆上開啟任何輸入連接埠。

您必須使用一組 WCF「轉送」繫結,起始內部部署服務和轉送服務之間的連線。轉送繫結會在幕後作業以對應至新的傳輸繫結元素,這類元素是設計來建立可與雲端服務匯流排整合的 WCF 通道元件。

轉送訊息有許多優點,但是伺服器和用戶端必須同時連線,才能傳送和接收訊息。對於要求存留時間通常不長的 HTTP 樣式通訊,以及只會偶爾連線的用戶端,例如瀏覽器、行動應用程式等,這並不是最理想的方式。代理訊息支援解除解合通訊,並具備它自己的優點;用戶端和伺服器可在需要時連線,並以非同步方式執行操作。

相對於轉送訊息配置,代理訊息可被視為非同步的或「暫時性解除解合」。產生者 (傳送者) 和消費者 (接收者) 不需要同時連線。此訊息基礎結構會可靠地在「代理」(如佇列) 中儲存訊息,直到取用方準備接收訊息為止。如此可讓分散式應用程式的元件中斷連接,不論是主動中斷連接 (例如進行維護) 或由於元件損毀而中斷連接,都不會影響整體系統。此外,接收的應用程式可能只必須在一天中的某些時間上線,例如,庫存管理系統只需要在每個營業日結束時執行。

服務匯流排代理訊息基礎結構的核心元件是 Service Bus 佇列、主題和訂閱。這些元件可促成新的非同步訊息案例,例如,時間解除解合、發行/訂閱,以及負載平衡。如需這些結構的相關資訊,請參閱下一節。

和轉送訊息基礎結構一樣,已針對 WCF 和 程式設計人員提供代理訊息功能,同時也會透過 REST 提供。

顯示:
© 2014 Microsoft