規劃在 BizTalk Server 中傳送和接收
BizTalk Server 接收配接器會接收 BizTalk Server 處理的每個檔,並使用 BizTalk Server 傳送配接器從 BizTalk Server 傳送。 由於 BizTalk Server 適配卡在任何 BizTalk Server 環境中以醒目方式顯示,因此請務必事先規劃決定您將使用的適配卡或快捷鍵,以及如何正確設定這些適配卡和/或快捷鍵。
判斷您將使用的配接器和加速器
事先與您的貿易夥伴合作,以判斷您需要哪些配接器和加速器,以利在組織與貿易夥伴之間傳送和接收檔,以及 BizTalk 應用程式和內部商務應用程式之間。 設計您的 BizTalk Server 架構,使其有足夠的彈性,以因應未來與其他貿易夥伴建立關聯性時新增額外的配接器或加速器。
BizTalk 配接器支援的功能
本節中的表格列出每個原生適配卡的主要優點,以及配接器是否提供下列功能:
交易支援 在分散式交易協調器的內容下傳送和接收檔的能力, (DTC) 交易。 此為維護已排序之訊息傳遞所需的必要功能,並用以保證文件並未重複或遺失。
注意
如果您遇到 MSDTC 的問題,請檢閱針對 MSDTC 問題進行疑難解答主題。
雙向通訊支援 (要求/回應或請求/回應) 能夠從目的地傳送檔並處理回應消息,或接收檔,並將回應消息傳送至來源。
依序接收支援。 能夠依照收到的檔確切順序,將收到的文件發佈至 MessageBox 資料庫。
注意
某些配接器可以在接收位置層級強制執行已排序的文件傳遞,而其他配接器則無法傳遞。 對於不支援在接收位置層級排序的檔傳遞的適配卡,仍可在傳送埠層級強制執行已排序的傳遞,但這樣做可能會造成效能負面影響。 如需已排序傳遞訊息的詳細資訊,請參閱 已排序的郵件傳遞主題。
已啟用 SSO。 以配接器傳送或接收文件時,使用 SSO 驗證的功能。
配接器 | 主要權益 | 異動支援 | Two-Way 通訊支援 | In-Order 接收支援 | 已啟用 SSO |
---|---|---|---|---|---|
檔案 | 容易使用 | No | No | No | No |
FTP | 廣泛用於企業對企業通訊 | No | No | No | Yes |
HTTP(S) | 廣泛用於企業對企業通訊 | No | 要求/回應和請求/回應 | No | Yes |
SOAP | 支援使用 Web 服務 | No | 要求/回應和請求/回應 | No | Yes |
MSMQ | 支援在 BizTalk Server 與 Microsoft 消息佇列之間保證一次僅傳遞訊息 | 是 | No | 是 | No |
MQ 系列 | 支持保證在 BizTalk Server 與 IBM WebSphere MQ for Windows 平臺之間傳遞訊息一次 | 是 | No | Yes | Yes |
SQL | 支援 BizTalk Server 與 SQL Server 資料庫之間的直接通訊 | Yes | 僅請求/回應 | No | No |
Windows SharePoint Services | 啟用在 BizTalk Server 與 SharePoint 文件庫之間交換 XML 和二進位訊息 | No | No | No | No |
POP3 | 支援透過電子郵件接收檔 | No | No | No | No |
SMTP | 支援透過電子郵件傳送檔 | No | No | No | No |
EDI | 支持處理符合EDI標準的商務檔 | No | No | No | No |
Custom | 支援您的舊版系統 | 是的,需要自訂程式碼。 | 是的,需要自訂程式碼。 | 是的,需要自訂程式碼。 | 是的,需要自訂程式碼。 |
WCF-WSHttp | 支援透過 HTTP 傳輸的 WS-* 標準 | 是,WsHTTP 支援交易 (僅限 WS-Transaction) | 要求/回應和請求/回應 | No | Yes |
WCF-BasicHttp | 使用 HTTP 或 HTTPS 與符合 WS-I 基本設定檔 1.1 的其他服務與 ASMX 型 Web 服務和客戶端通訊 | No | 要求/回應和請求/回應 | No | Yes |
WCF-NetTcp | 支援透過 TCP 傳輸的 WS-* 標準 | Yes | 要求/回應和請求/回應 | No | Yes |
WCF-NetMsmq | 利用 Microsoft Message Queuing (MSMQ) 作為傳輸,以支援佇列 | 是 | No | Yes | Yes |
WCF-NetNamedPipe | 僅針對 WCF 應用程式) ,為相同電腦上的跨進程通訊提供快速傳輸 ( | Yes | 要求/回應和請求/回應 | No | Yes |
WCF-Custom | 啟用 WCF 擴充性功能的使用 | 可以。 | 可以。 | 是,只要繫結支援它即可。 | 是的 |
WCF-CustomIsolated | 允許透過 HTTP 傳輸使用 WCF 擴充性功能 | 可以。 | 是。 | 否。 | 是。 |
商務營運系統配接器
以下是 Microsoft 提供的「主要商務」(LOB) 配接器清單。
注意
除了適用於 mySAP™ Business Suite 的 Microsoft BizTalk Adapter v2.0 (Adapter) ,Windows Vista 上不支援任何企業營運適配卡。
配接器 | Description | 支援的版本 |
---|---|---|
SAP (也稱為「配接器」) | 啟用中繼檔 (IDOC) 、BAPI 和遠端函數調用的交換, (RFC) BizTalk Server 與 SAP R/3® 系統之間的訊息。 | SAP R/3 4.x 和 R/3 6.20 (Enterprise) |
PeopleSoft Enterprise | 允許在 BizTalk Server 和 PeopleSoft 系統之間的元件介面 (CI) 訊息交換。 | PeopleTools 8.17.02、8.43、8.45、8.46 和 8.48 版 |
JD Edwards OneWorld XE | 允許在 BizTalk Server 和 JD Edwards OneWorld 系統之間的商務功能訊息交換。 | B7.3.3.3 SP23 和 JDE 8.0 (B7.3.3.4) |
JD Edwards EnterpriseOne | 允許在 BizTalk Server 和 JD Edwards EnterpriseOne 系統之間的商務功能訊息交換。 | 8.10 & 8.11 與工具 8.93、8.94、8.95 和 8.96 版 |
Oracle 資料庫的 ODBC 配接器 | 允許從 Oracle Server 資料庫讀取和寫入資訊。 | Oracle 8i (8.1.6.0) 、9i (9.2.0.1) 或 10g |
Siebel eBusiness Application | 允許在 BizTalk Server 和 Siebel eBusiness 應用程式之間的商務元件和商務服務訊息交換。 | 7.0、7.5.*、7.7.*和 7.8.* |
TIBCO Rendezvous | 允許在 BizTalk Server 和 TIBCO Rendezvous 之間的 XML 和二進位資料格式訊息交換。 | 7.3 |
TIBCO Enterprise Message Service | 允許在 BizTalk Server 和提供緊密整合及可靠應用程式基礎結構之 TIBCO EMS 伺服器之間的 XML 及二進位資料格式訊息交換。 | 4.2 |
WebSphere MQ | 允許在 BizTalk Server 和 IBM WebSphere MQ 之間的訊息交換。 | 5.3 含修正套件 10 或更新版本,以及具有修正套件 1.1 或更新版本的 6.0 |
如需 BizTalk Server 可用 LOB 配接器的詳細資訊,請參閱下列資源:
BizTalk 配接器套件
Microsoft BizTalk 配接器套件包含 WCF 型配接器,可提供與 LOB 應用程式的連線,例如 Oracle Database、Oracle E-Business Suite、SAP、Siebel 和 SQL Server。 如需 BizTalk 配接器套件提供的詳細資訊和配接器清單,請參閱下列資源:
重要
若要將 BizTalk 專案的 LOB 配接器移轉至 BizTalk 專案,以用於 BizTalk 配接器套件中可用的 WCF 型 LOB 配接器,您可以使用 BizTalk 配接器套件移轉工具。
若要下載 BizTalk 配接器套件移轉工具,請移至 Azure Integration Migrationor BizTalk 的 GitHub 存放庫。 如需將 LOB 配接器移轉至 BizTalk 配接器套件隨附之 WCF 型 LOB 配接器的詳細資訊,請參閱 Microsoft BizTalk Adapter 2.0 移轉白皮書。
BizTalk 加速器
雖然 BizTalk 配接器可配合傳送和接收具有特定通訊協議的檔,但 BizTalk 加速器的設計目的是要根據特定業界標準來容納文件的交換。 如需可用 BizTalk 加速器的清單,請參閱 Microsoft BizTalk Server Accelerators。
在將傳輸公開至因特網時設定網域
為了協助在組織與外部貿易夥伴之間傳送和接收檔,您可能需要在可從因特網存取的公開網站上公開傳輸。 在這些情況下,建議使用下列網域設定:
使用周邊網路網域, (也稱為非防護區域, (DMZ) 或已篩選的子網) ,為組織提供因特網相關服務
周邊網路網域應包含存放實體位置的伺服器,其中因特網對向傳輸會在執行 BizTalk Server的計算機與貿易夥伴之間路由傳送檔。 周邊網路防火牆應該只開啟允許與因特網對向傳輸進行通訊所需的埠。 沒有執行 BizTalk Server、BizTalk Server 接收位置或周邊網路網域中企業單一 Sign-On 伺服器計算機的計算機。 在周邊網路網域中傳送/接收到傳輸的檔,應該從因特網對向防火牆路由傳送至防火牆,以使用因特網安全性與加速伺服器保護處理網域, (ISA) 伺服器 Web 發佈和伺服器發佈。
注意
作為安全性的新增量值,請考慮使用公鑰基礎結構 (PKI) 數位證書,以進行檔加密和解密、檔簽署和驗證 () 透過因特網對向傳輸在此網域中傳送或接收貿易夥伴的檔。
下列傳輸通常用於可從因特網存取的周邊網路網域:
FTP - 使用 FTP 通訊協定接收檔
SMTP - 使用 SMTP 通訊協定傳送檔
HTTP - 使用 HTTP 通訊協定接收檔
SOAP - 使用 SOAP 接收檔
POP3 - 使用 POP3 通訊協定接收檔
採用處理網域來存放包含 BizTalk Server 接收和傳送處理程式和 BAM 入口網站伺服器的伺服器
周邊網域外部傳輸與處理網路變數中的 BizTalk 配接器之間的檔流程應該透過這些網路端之間的防火牆路由傳送。 處理網域應該 BizTalk Server 埠、接收位置、管線、對應、架構和元件,用來接收、路由和傳送訊息。 處理網域也應該包含 BAM 入口網站的伺服器。 在處理網域中執行 BizTalk Server的計算機數目將取決於符合組織效能需求所需的主機和主機實例數目。
重要
請確定您在處理網域中建立足夠的隔離主機實例,以容納在周邊網域中的 HTTP 和 SOAP 傳輸與處理網域中的 HTTP 和 SOAP 配接器之間流動的流量。 如果組織與貿易夥伴之間的檔流量大量流經 HTTP 和 SOAP 傳輸,則處理網域中必須有足夠的處理頻寬來處理檔流程。
採用其他網域,為您的環境提供進一步的隔離和安全性層級
這些網域應包括:
由處理網域信任的服務網域,需要此網域才能順利處理訊息。 服務網域中的伺服器通常會執行 BizTalk 協調流程、管線、企業單一 Sign-On (SSO) 服務、商務規則引擎,而且可能包含其他商務程式。
執行 SQL Server 的計算機數據域,BizTalk Server。
伺服器和桌面計算機的公司網域,可為組織中的資訊工作者提供服務。
如需針對各種 BizTalk Server 架構建議的網域拓撲詳細資訊,請參閱範例 BizTalk Server 架構。
高可用性考慮
您可以在 BizTalk 群組中的多個 BizTalk 伺服器上執行配接器處理程式主機實例,為大部分適配卡提供高可用性。 如此一來,如果一個配接器處理程式主機實例失敗,可以使用另一個配接器處理程式主機實例繼續處理。 不過,執行這項操作的例外狀況除外。 在某些情況下,執行多個配接器處理程式主機實例可能會導致爭用問題。 例如,執行 POP3 和 FTP 適配卡的多個實例時,可能會發生爭用問題。 在這些情況下,您可以藉由在叢集 BizTalk 主機中執行配接器處理程式主機實例,為配接器提供高可用性。
如需透過主機叢集為配接器處理程式主機實例提供高可用性的詳細資訊,請參閱 叢集主機內執行配接器處理程序的考慮 。 如需提供 BizTalk 主機高可用性的詳細資訊,請參閱 BizTalk 主機的高可用性。
效能考量
SOAP 配接器效能考慮
如需優化 SOAP 配接器效能的相關信息,請參閱 影響配接器效能的組態參數。
MQSeries 配接器效能考慮
如果 MQSeries 配接器接收位置不需要,請停用交易支援和已排序的傳遞 當 MQSeries 配接器接收位置設定為 [ 交易支援 ] 選項設定為 [ 是],或 [ 已排序 ] 選項設定為 [ 停止] 時,接收位置所挑選的每個訊息都會在 Microsoft Distributed Transaction Coordinator (MSDTC) 交易的內容中處理。 由於在 MSDTC 交易的內容中處理訊息時會產生額外的額外負荷,因此,如果 MQSeries 配接器接收位置不需要已排序的傳遞或交易支援,則不應該啟用這些選項。
規劃已排序的訊息傳遞
已排序的訊息傳遞可確保以指定順序發佈至 MessageBox 資料庫的訊息會以相同順序傳遞至每個相符的訂閱者。 實作訊息的排序傳遞時,適用下列考慮:
設定訊息的排序傳遞
可在下列位置設定訊息的排序傳遞:
協調流程中的 [接收] 圖形
接收特定配接器的位置
傳送埠
具備現有傳輸的排序傳遞
在特定傳輸之下的通訊協定,像是 FILE 和 HTTP,與排序傳遞的概念並不一致。 不過,即使具備這類傳輸,若與傳輸繫結的連接埠標示為排序的傳遞,則 BizTalk Server 會藉由保證除非已成功傳送目前的輸出訊息,否則傳輸不會取得下一個輸出訊息,以強制排序的傳遞。 若要達到此目的,BizTalk Server 將每則訊息傳遞至單一批次中的傳輸配接器,並等到配接器已成功從 MessageBox 資料庫刪除訊息,再將下一個訊息在另一個批次中傳遞至配接器。
自訂配接器的排序傳遞
若要讓自定義接收配接器在提交訊息至 BizTalk Server 時保留訊息的順序,您必須使用下列功能來開發配接器:
提交一批訊息之後,您的自定義接收配接器應該先等候 BatchComplete 從 BizTalk Server 回呼,然後再提交下一個批次。 如需詳細資訊,請參閱 Batch-Supported 接收配接器的介面。
如果管線中的訊息失敗,應該暫停,最好是不可繼續。 使用 BTS。BizTalk Server 中的 SuspendAsNonResumable 訊息內容屬性,以適當地標幟訊息。
注意
若在稍後繼續擱置的訊息,則會中斷訊息順序。 如果您不想要此行為,請將失敗的訊息暫止為不可繼續。
端對端排序訊息處理的條件
若要提供端對端排序的傳遞,必須符合下列條件:
必須以保留提交訊息給 BizTalk Server 的訊息順序之配接器接收訊息。 在 BizTalk Server 中,這類適配卡的範例包括 MSMQ 和 MQSeries。 此外,HTTP 或 SOAP 配接器可用來依序提交訊息,但在此情況下,HTTP 或 SOAP 用戶端必須一次提交訊息來強制執行訂單。
您必須使用已 排序傳遞 選項設定為 True 的傳送埠來訂閱這些訊息。
如果協調流程是用來處理訊息,則應該只使用協調流程的單一實例、協調流程應設定為使用循序串連,而協調流程接收埠的 已排序傳遞 屬性應該設定為 True。