如何在自動和手動的交易同層級回復之間做選擇
在決定要用哪一類的交易同層級回復時,您的檔案系統類型是主要因素。 不同的檔案系統有不同的行為,當在自動和手動同層級回復之間選擇時,檔案鎖定行為尤其重要。
WebSphere® Application Server 高可用性 (HA) 支援利用活動訊號機制來判斷伺服器是否仍在執行中。 如果伺服器停止回應活動訊號要求,就會將它們視為已失效。 部分實務,例如系統超載和網路分割(這個主題另有說明),有可能使伺服器即使仍在執行中,也停止回應活動訊號。 WebSphere Application Server 利用檔案鎖定技術來防止這類事件造成並行存取交易回復日誌,因為多部伺服器存取回復日誌有可能導致失去資料完整性。
不過,並非所有檔案系統都會提供必要的檔案鎖定語意,在伺服器失效時釋放檔案鎖定,尤其如此。 例如,「網路檔案系統第 4 版 (NFSv4)」會提供這個釋放行為,「網路檔案系統第 3 版 (NFSv3)」則不提供。
您可以執行 WebSphere Application Server 的「檔案系統鎖定通訊協定測試」,來測試共用的檔案系統是否能夠支援交易日誌的失效接手。 如果要執行這項測試,請參閱 http://www-01.ibm.com/support/docview.wss?uid=swg24010222。
當主機失效時,NFSv4 會釋放代表主機保留的鎖定。 無需重新啟動失效的硬體,即可自動進行同層級回復。 因此,這個版本的 NFS 比較適合使用自動化同層級回復。
NFSv3 會代表失效主機保留檔案鎖定,直到主機能夠重新啟動為止。 在這個環境定義中,主機是執行要求鎖定的應用程式伺服器之實體機器,最終會觸發釋放鎖定的是重新啟動主機,而不是應用程式伺服器。
- H 伺服器執行於 H 主機,且會保留它本身的回復日誌檔的專用檔案鎖定。
- P 伺服器執行於 P 主機,且會保留它本身的回復日誌檔的專用檔案鎖定。
- H 主機失效,H 伺服器也受連累。檔案伺服器的 NFS 鎖定管理程式會保留代表 H 伺服器獲授與的鎖定。
- WebSphere Application Server 在 P 伺服器中,觸發 H 伺服器的同層級回復事件。
- P 伺服器試圖取得這個同層級回復日誌的專用檔案鎖定,但無法取得,因為已代表 H 伺服器保留這個鎖定。同層級回復程序已封鎖。
- H 主機在未指定的時間重新啟動。代表它而保留的鎖定會被釋放。
- P 伺服器中的同層級回復程序解除封鎖,且被授與進行同層級回復所需要的專用檔案鎖定。
- 在 P 伺服器中進行 H 伺服器的同層級回復。
- 重新啟動 H 伺服器。
- 如果 P 伺服器中同層級回復仍在進行,回復會中止。
- P 伺服器釋放回復日誌的專用鎖定,將回復日誌的所有權還給 H 伺服器。
- H 伺服器取得專用鎖定,這時可以進行標準的交易記載。
由於這個行為,在 NFSv3,您必須停用檔案鎖定,才能使用自動化同層級回復。 停用檔案鎖定有可能導致並行存取回復日誌,因此首先要保護系統免於系統超載和網路分割,這一點非常重要。 另外,您也可以配置手動同層級回復,只針對失效伺服器來手動觸發同層級回復處理,以防止並行存取。
- 系統超載
- 當機器的負載變得非常繁重,而導致回應時間很長,要求開始逾時,就會發生系統超載的情況。
這類超載有若干潛在的原因,其中包括:
- 伺服器性能下降,無法處理工作量。
- 伺服器收到的要求臨時激增。
- 可用的實體記憶體不足。因此,作業系統忙於進行分頁,以致於無法提供應用程式伺服器所需要的 CPU 時間。
- 網路分割
- 當網路通訊失敗,導致兩個較小的網路彼此分開,無法互相聯絡時,就會發生網路分割的情況。

在正常執行期間,網路上的兩部伺服器會交換活動訊號。 在系統超載期間,活動訊號作業會逾時,呈現出伺服器故障的樣子。 在網路分割之後,每一部伺服器都是在個別網路中,在它們之間,無法傳遞活動訊號,也會呈現出伺服器故障的樣子。