支援交易和兩階段交易認可

在 COM termwinology 中,交易一律是不可部分完成、一致、隔離且持久 (ACID) 的工作單位。 在大型主機術語中,交易不一定是 ACID 交易;在大型主機術語中,交易是交易程式中的一組作業或命令, (TP) 。 術語的差異可能會令人混淆。 在 TI 管理員和 TI Designer中使用的單字交易一律是指 ACID 交易。

雙階段認可 (2PC) 是一種通訊協定,可讓一組應用程式 (或跨應用程式) 作業或命令全部回復或全部認可為單一交易式單位。

注意

如果您透過 TCP/IP 通訊協定叫用 TI 自動化伺服器,則不支援雙階段認可交易。 雙階段認可僅適用于 SNA APPC/LU 6.2 通訊協定。

TI 元件有四個可能的交易屬性:

  • 需要交易

  • 需要新的交易

  • 支援交易

  • 不支援交易

    前兩個選項需要大型主機 TP 交易式 (,也就是符合 ACID 屬性) 並支援同步層級 2。 如果大型主機 TP 是 CICS 連結或 IMS 6.0 版或更新版本程式,則這是透明的。 第三個選項需要大型主機 TP 支援同步層級 2 要求,並適當地處理交易語意。 IMS 6.0 版之前的 IMS TP 以及僅支援同步層級 0 或同步層級 1 的任何 CICS TP 都需要第四個選項。

    如果在 COM+ 交易的範圍內叫用 TI 元件,TI 會建立與 CICS (的同步層級 2 交談,否則會使用同步層級 0) 。 這對 TI 元件的用戶端而言是透明的。 如果大型主機 TP 是 CICS Link 程式,則交談的交易本質也對 TP 而言是透明的,因為 CICS 中的 IBM 鏡像交易 (CSMI) 會處理同步層級 2 通訊協定,而且其連結的 TP 不會察覺同步層級 0 或同步層級 2 正在使用。

    TI 會藉由呼叫 SetComplete 或 SetAbort,以符合 COM+ 程式設計模型,當它完成用戶端的每個方法呼叫作業時。 如果未偵測到任何錯誤,TI 會呼叫 SetComplete;否則會呼叫 SetAbort。 如果大型主機 TP 指出交易不應認可,則 TI 也會呼叫 SetAbort,方法是在傳回的中繼資料錯誤區塊中設定 DisableCommit 旗標。 TI 自動化用戶端應用程式也可以選擇呼叫 SetAbort,如果他們判斷有應用層級問題應該禁止交易認可。

    當用戶端的 方法呼叫傳回時,大型主機上的 TP 已執行一些工作單位,但尚未認可 CICS 中受保護資源的任何變更。 TI 會使用新的 DTC 介面來登記 DTC 交易上的同步層級 2 交談。 當 DTC 準備好認可或中止交易時,它會與 TI 通訊,以在 LU 6.2 交談上驅動適當的雙階段認可流程。 同樣地,TI 會代表用戶端以透明方式執行所有 2PC 工作。

    雖然當方法完成時可以停用 TI 物件,但是必須維護交談,直到交易認可或中止為止。 如果使用者的應用程式程式碼進行一或多個交易式方法呼叫,但不會長時間認可交易,使用者可能會對效能造成負面影響並系結系統資源。 低結構化使用者程式碼可以快速取用交談。

    當交談等候認可時,會從與其相關聯的物件中擷取。 TI 會管理這些「等候」交談的集區,並在從 DTC 收到適當的通知時執行必要的同步層級作業。 可能的話,TI 會重複使用這些交談,以將額外負荷降到最低。

    TI 也提供重新同步處理服務, (SNA LU 6.2 Resync TP) 。 此 Windows 服務已設定為 SNA 定義的 Resync TP (0x06f2) 自動啟動的可叫用服務。 Resync 服務會實作 SNA 交易管理員的「Exchange 記錄名稱」和「比較狀態」函式。 它可讓 DTC (分散式交易協調器) 和 CICS 在系統啟動期間或遵循系統或通訊失敗時,視需要起始復原程式。

    如需 IBM SNA SyncPoint 或 2PC 流程的相關資訊, SNA SyncPoint Services 架構參考 (IBM SC31-8134-00) 。 所有 TI 2PC 流程都會以符合此架構的一致性來實作。

注意

如需如何使用使用明確 SYNCPOINT 命令之 CICS 連結 TP 的資訊,請參閱 具有明確 SYNCPOINT 命令的 TP

總而言之,若要使用雙階段認可,您必須符合下列所有需求:

  • 本機和遠端 RU 都必須在 [主機整合伺服器] 節點中啟用 SyncPoint 支援。

  • 本機和遠端 RU 應該每個指向執行 Resync 服務的電腦。

  • 遠端環境 (RE) 必須啟用同步層級 2 支援。 若要檢查此問題,請以滑鼠右鍵按一下 TI 管理員中的 RE,按一下 [內容],然後按一下 [LU 6.2] 索引標籤。

  • TI 元件必須將 [交易支援] 設定為 [支援]、[必要] 或 [需要新的]。 若要檢查此設定,請以滑鼠右鍵按一下 TI 管理員中的 TI 元件,按一下 [內容],然後按一下 [交易] 索引標籤。

  • 遠端主機電腦必須設定為同步層級 2 支援。

另請參閱

WIP 程式設計模型