閱讀英文

共用方式為


配接器變數

任何自訂配接器都需要處理一些變數, 指派給這些變數的值會影響該配接器所實作的自訂邏輯。 傳輸專用或應用程式專用的組態屬性也有助於支援您的解決方案。 下表列出這些常用的變數。 您必須決定您是否想要在自訂配接器中支援每一個變數。

您的配接器必須針對每一個選項來實作特定的介面。 表格之後為變數選項的清單,其中包含有關撰寫配接器程式碼來支援設計決策的相關資訊連結。

配接器變數 Description
通訊方向 接收。 接收配接器會接聽通訊協定特定的位址,看看是否有內送訊息。 當收到訊息時,接收配接器會將此訊息遞交給傳訊引擎,然後傳訊引擎會透過接收管線來傳遞此訊息,最後將訊息保存到 MessageBox 資料庫。

Send。 當傳訊引擎需要傳送訊息給特定端點時,它會將訊息傳送到傳送管線。 傳送配接器會接受來自傳送管線的訊息,並將訊息傳送給傳送埠。
配接器裝載 內含式。 內建配接器會建立並裝載于 BizTalk 服務進程內,BTSNTSvc.exe。 如果主機為 64 位,進程就會命名為 BTSNTSvc64.exe。 為了簡化起見,我們在本章節中將不會再次提到此 64 位元處理序。

這表示BizTalk Server建立和管理配接器的存留期、使用傳輸 Proxy 初始化配接器、服務配接器要求,並在服務關機時終止配接器。

對於進程內配接器,BizTalk Server也會在執行時間將組態資訊傳遞至配接器,包括處理常式、傳送埠和接收位置設定。 此外,傳訊引擎會處理組態的各個層面 (如服務視窗),好讓配接器不需要確定接收位置或傳送埠在服務視窗外面。

請注意,所有傳送配接器都是內含式配接器,而且都必須在 BTSNTSvc.exe 處理序內執行。

外掛式。 配接器是在不屬於BizTalk Server執行時間的隔離主機中建立。 外掛式配接器的一個範例是 HTTP 服務配接器,它會在 Internet Information Services (IIS) 的處理序空間內執行。

IIS 處理序模型可讓 IIS 管理 ASP.NET 應用程式和 ISAPI 延伸模組的存留期間。 當BizTalk Server無法管理配接器的存留期時,介面卡稱為隔離式介面卡。

因為BizTalk Server不會管理隔離式介面卡的具現化,所以介面卡必須建立自己的傳輸 Proxy,並向該傳輸 Proxy 註冊自己的傳輸 Proxy。

請注意,BizTalk Server架構可消除不必要的處理序間通訊。 由於外掛式配接器和 BizTalk 堆疊位於相同的處理序內,所以當此配接器呼叫傳訊引擎時,不需要進行處理序間通訊。 唯一的處理序間通訊是發生在傳訊引擎與資料庫之間,而這是無可避免的。

COM+ 應用程式無法裝載以非 Managed 程式碼撰寫的傳送配接器。
訊息交換模式 單向。 訊息為內送或外寄。

要求-回應 (雙向) 要求-回應配接器一律會收到配接器。 要求-回應接收配接器會接收來自用戶端的要求訊息,並將訊息提交至BizTalk Server。 BizTalk Server處理要求訊息之後,它會將回應訊息傳回配接器。 然後,配接器會將此回應訊息傳回給用戶端。

Solicit-Response (雙向) Solicit-response 配接器一律會傳送配接器。 請求-回應傳送配接器會從 BizTalk Server 傳送要求訊息至目的地、等候回應訊息,然後將回應訊息提交回 BizTalk Server。
傳送埠繫結 動態傳送埠和接收位置。 用於動態繫結之傳送埠或接收位置的 URI 變數會在執行階段決定。

靜態傳送埠和接收位置。 傳送埠或接收位置的 URI 變數為靜態,而且會在執行階段之前設定。
同步傳送配接器與非同步傳送配接器的比較 同步傳送配接器。 當執行傳送作業時,傳訊引擎會封鎖傳輸 Proxy 執行緒,直到它傳送訊息批次並傳回為止。 此傳輸 Proxy 會在訊息傳輸、重試、擱置或移到下一個作業完成之後,處理訊息的移除動作。

非同步傳送配接器。 非同步傳送配接器不會封鎖傳輸 Proxy 執行緒,而是在執行傳送作業時使用另一個執行緒。 與同步配接器不同的是,這種配接器本身必須實作所有的刪除和重試邏輯,因為傳輸 Proxy 不會處理此邏輯。

傳送非同步訊息的配接器,比傳送同步訊息的配接器更BizTalk Server效能。 這是因為執行緒會花許多時間來等候輸入或輸出作業完成。 由於傳訊引擎會高度繫結到 CPU,所以封鎖傳訊引擎執行緒會降低配接器的效能。

我們強烈建議您使用非同步傳輸,這種傳輸方式會提高效能。
非同步接收配接器 所有接收配接器都是非同步的, 這表示,當配接器提交新的訊息給 BizTalk 傳訊引擎時,它不會等候訊息完全處理完畢再將其傳回。
交易式支援 交易式配接器。 支援以交易方式傳送和接收訊息。 另一方面,只有非同步批次傳送配接器可支援交易。

非交易式配接器。 在明確交易範圍內不會接收或傳送訊息的配接器。 許多配接器都是非交易式,因為它們會與不支援交易的系統 (如 Windows 檔案系統) 來回傳送。
支援批次的傳送配接器與不支援批次的傳送配接器兩者的比較 支援批次的配接器。 傳送配接器可以處理批次作業中的訊息。

所有配接器都可以收集可用於提交的所有訊息,然後將訊息一次提交給 MessageBox 資料庫,以減少必要的資料庫更新次數。 在某些情況下,這表示批次的長度為一。 同樣地,傳送配接器也可以收集可用於傳送的所有訊息、擷取這些訊息,然後將訊息一次傳送給其目的地。

一般而言,BizTalk Server會將批次視為資料庫更新的工作單位。 在相同的批次內,配接器可以提交單向、要求-回應和請求-回應訊息;擱置訊息;刪除訊息;要求重試訊息來進行傳輸;或是要求訊息移到備份傳輸。 您應該盡可能使用批次傳輸。

傳送和接收配接器都可以批次處理,但只有批次的非同步傳送配接器可支援交易。

不支援批次的配接器。 每一個訊息都需要獨立呼叫伺服器。
支援批次的接收配接器 所有的接收配接器都支援批次處理。
動態與靜態設計階段配接器組態的比較 動態配接器設計階段。 為了要讓配接器支援動態設計階段組態,您必須開發一個自訂使用者介面 (UI) 來搭配「新增配接器中繼資料精靈」一起使用。 此介面可讓使用者選取要加入 BizTalk 專案的結構描述,並透過 Web 服務描述語言 (WSDL) 檔案來傳回它的服務描述。 此配接器會提供一個自訂 UI 來取得結構描述。 當透過「新增配接器中繼資料精靈」匯入服務時,它會將連接埠類型、訊息類型和協調流程加入到 BizTalk 專案 (也會加入到結構描述)。

如需詳細資訊,請參閱 靜態 Design-Time 配接器組態

靜態配接器設計階段。 為了要讓配接器支援靜態設計階段組態,您必須實作標準介面來讓「新增配接器中繼資料精靈」選取要加入到 BizTalk 專案的結構描述。 BizTalk 配接器架構會提供此配接器的 UI。

如需修改範例檔案配接器的資訊,請參閱 動態 Design-Time 配接器組態
傳輸配接器與應用程式配接器的比較 傳輸配接器。 傳輸配接器支援特定的通訊協定,而且不會使用結構描述。 在 12 個原生介面卡中,九個是傳輸配接器:MSMQ、MQ 系列、檔案、FTP、HTTP、SMTP、POP3 和 SOAP。

應用程式配接器。 應用程式配接器會使用資料結構描述,將資料傳送到指定的應用程式中。 在原生配接器中,兩個是應用程式配接器:Windows SharePoint Services 和 SQL。

如需自訂配接器程式碼中所要實作之介面的詳細資訊,請使用下表的連結,找出您打算建立的配接器類型。 在某些情況下,您必須將為了符合某項需求所列的介面與另一頁上為了符合另一項需求所列的介面結合起來。

另請參閱

開發自訂配接器
使用配接器
配接器範例 - 開發