交易式高可用性

交易服務的高可用性可讓叢集中的任何伺服器回復相同叢集中任何其他伺服器的交易工作。 這項機能形成了整體 WebSphere® Application Server 高可用性 (HA) 策略的一部分。

[z/OS]這項特性除了支援同層級重新啟動及回復,還可讓您在 Sysplex 中的同層級系統上重新啟動。

作為提供交易回復很重要的一部分,交易服務會將作用中交易工作的相關資訊記載在交易回復日誌中。 交易回復日誌會以持續存在的形式來儲存資訊,這表示在伺服器重新啟動之後,可以解析在伺服器失效時正在進行中的任何交易工作。 這個活動稱為交易回復處理。 除了完成未完成的交易之外,這個程序也可確保會釋出相關資源管理程式所保留的任何鎖定。

同層級回復處理

當應用程式伺服器重新啟動時,執行的標準回復程序是供伺服器擷取並處理記載的交易資訊、回復交易工作,以及完成不確定的交易。 在伺服器已順利重新啟動並處理交易工作的交易日誌之後,便完成了執行交易工作(並因而釋放交易所保留的任何資料庫鎖定)。 如果伺服器很慢才回復或需要人工介入,則無法完成交易工作且破壞相關聯資料庫的存取。

為了將這類交易工作和相關聯資料庫的毀壞減至最低,WebSphere Application Server 提供了一個稱為交易同層級回復的高可用性策略。

同層級回復是在伺服器叢集內提供。 同層級伺服器(另一個叢集成員)在繼續管理它自己的交易工作量的同時,可以處理失敗伺服器的回復日誌。您不需要等待失敗的伺服器重新啟動,或明確啟動新的應用程式伺服器來回復失敗的伺服器。

圖 1. 同層級回復
伺服器叢集中的同層級回復,顯示伺服器 1 在起始失敗的伺服器 2 和伺服器 3 的回復處理程序前後的情形。

同層級回復程序在邏輯上等同於重新啟動失敗的伺服器,但不是完整重新啟動同層級伺服器內的失敗伺服器。同層級回復程序提供一個機會,供您完成未完成的工作;它無法啟動回復處理程序以外的新工作。 失敗的伺服器不可能進行任何轉遞處理程序。

同層級回復將高可用性需求從個別伺服器移開至伺服器叢集。在這些失敗之後,叢集的管理系統會將新工作分派給其餘伺服器;唯一差別是整體系統通訊量可能下降。 如果伺服器失敗,需要完成的事,便是將失敗伺服器中的作用中工作處理完,再將要求重新導向到替代伺服器。

依預設,在您啟用叢集配置內交易日誌回復的失效接手及重新啟動叢集成員之前,會停用同層級回復。 啟用交易日誌回復之後,WebSphere Application Server 即支援兩種交易同層級回復的起始樣式:自動和手動。 請根據您的部署來判斷哪個樣式較適合,以及配置適當的高可用性原則來指定該樣式。 這些主題中的其他地方稱這個高可用性原則為交易服務的原則
自動化同層級回復
這個樣式是同層級回復起始的預設值。 如果應用程式伺服器失敗,WebSphere Application Server 會自動代表它選取一個伺服器來進行同層級回復處理程序,並於失敗的伺服器重新啟動時,將回復控制權傳回給它。如果要使用這個模型,請啟用交易日誌回復,並配置每個叢集成員的回復日誌位置。
手動同層級回復
您必須明確配置這個樣式的同層級回復。 如果應用程式伺服器失敗,請利用管理主控台選取伺服器來代表它執行回復處理。

在 HA 環境中,您必須配置補償日誌以及交易日誌。對叢集中的每一部伺服器,請使用補償服務設定來配置唯一的補償日誌位置,並確定所有叢集成員都能夠存取這些補償日誌。

同層級回復範例

下圖說明單一伺服器失敗時所發生的同層級回復程序。 圖 2 顯示在 WebSphere Application Server 叢集中執行的三部穩定的伺服器。在這些伺服器之間,會平衡工作量,導致後端資料庫會代替每個伺服器來保留鎖定。

圖 2. 伺服器叢集啟動並執行中,即將發生伺服器失效
此圖說明在伺服器發生故障之前的伺服器叢集。

圖 3 顯示伺服器 1 失敗之後未清除資料庫鎖定的系統狀態。 伺服器 2 和 3 可以將現有的交易執行到完成,再釋出後端資料庫中現有的鎖定,但進一步的存取能力可能會受影響,因為這時仍代替伺服器 1 保留鎖定。實際上,假如適當配置了鎖定精度,伺服器 2 和 3 應該仍可能執行某層次的存取,但這個範例假設伺服器 2 和 3 嘗試存取鎖定的記錄而成為已封鎖。

圖 3. 伺服器 1 失敗。 伺服器 2 和 3 會因此遭到封鎖
本圖顯示因為伺服器 1 失效而導致伺服器 2 和 3 被封鎖。

圖 4 顯示伺服器 3 內執行伺服器 1 的同層級回復程序。回復程序的交易服務部分會擷取伺服器 1 所儲存的資訊,並利用該資訊來完成任何不確定的交易。 在這個圖中,局部完成同層級回復程序,因為還有資料庫代替伺服器 1 保留部分鎖定。

圖 4. 伺服器 3 中啟動了同層級回復程序
這個圖顯示伺服器 3 中的同層級回復程序。

圖 5 顯示同層級回復程序完成時的伺服器叢集狀態。 系統在只有兩部伺服器的情況下狀態穩定,這兩部伺服器之間的工作量達到平衡。 伺服器 1 可以重新啟動,本身不會有任何需要執行的回復處理程序。

圖 5. 伺服器叢集在只有兩部伺服器(伺服器 2 和伺服器 3)的情況下再度穩定
這個圖顯示伺服器 2 和 3 的伺服器叢集穩定性。

指出主題類型的圖示 概念主題



時間戳記圖示 前次更新: last_date
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=cjta_trans_ha
檔名:cjta_trans_ha.html