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

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

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

注意

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

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

  • 需要交易

  • 需要新交易

  • 支援交易

  • 不支援交易

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

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

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

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

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

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

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

    如需 IBM 的 SNA SyncPoint 或2PC 流程的相關資訊,請 參閱 (IBM SC31-8134-00) 的 Sna SyncPoint Services 架構參考 。 所有的 TI 2PC 流程都會在符合此架構的情況下執行。

注意

如需有關如何使用使用明確 SYNCPOINT 命令之 CICS Link Tp 的詳細資訊,請參閱 tp 與明確的 SYNCPOINT 命令

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

  • 本機和遠端 lu 必須在 Host Integration Server 節點中啟用 SyncPoint 支援。

  • 本機和遠端 Lu 都應該指向正在執行重新同步服務的電腦。

  • 遠端環境 (重新) 必須啟用同步層級2支援。 若要檢查此項,請以滑鼠右鍵按一下 [RE],再按一下 [屬性],然後按一下 [LU 6.2] 索引標籤。

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

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

另請參閱

WIP 程式設計模型