叢集


移轉如何運作
叢集將要求從一部伺服器重新指向另一部伺服器的能力,稱為移轉。當使用者嘗試在無法使用或繁忙的伺服器上存取資料庫時,Domino 會將使用者指向叢集中另一部擁有該資料庫抄本的伺服器上。

每一部叢集伺服器上的「叢集監督者」會去探測其他叢集伺服器,以決定每部伺服器的可用性。「叢集監督者」也會持續查看每部伺服器上有哪些可用的抄本。當使用者試圖存取無法使用的資料庫時,使用者的要求會重新指向叢集中另一部具有該資料庫抄本的伺服器中。儘管使用者是連到不同伺服器上的抄本,但對使用者來說,移轉基本上是透明化的。

範例
本例說明 Domino 進行移轉時的程序。此叢集含有三個伺服器。伺服器 1 目前無法使用。伺服器 2 與伺服器 3 的「叢集監督者」都察覺到,伺服器 1 無法使用。

叢集中的移轉

1. Notes 使用者嘗試開啟伺服器 1 上的一個資料庫。

2. Notes 發現伺服器 1 沒有回應。

3. 此時 Notes 不會顯示伺服器沒有回應的訊息,而是查看叢集快取記憶體,以瞭解此伺服器是否為叢集的成員,並找出叢集中其他伺服器的名稱。(當 Notes 用戶端首次存取叢集中的伺服器時,叢集中所有伺服器的名稱都會新增到用戶端的叢集快取記憶體中。此快取記憶體會每 15 分鐘執行一次更新。)

4. Notes 存取叢集快取記憶體中所列的下一部伺服器的「叢集監督者」。

5. 「叢集管理員」會查看「叢集資料庫目錄」,找出叢集中的哪些伺服器含有想要的資料庫之抄本。

6. 「叢集管理員」查看它的伺服器叢集快取,以找出每一個含有抄本的伺服器之可用性。(伺服器叢集快取記憶體包含有叢集中所有伺服器的資訊。叢集伺服器會在傳送探測到其他叢集伺服器,取得這份資訊。)

7. 「叢集管理員」會建立叢集中含有資料庫抄本的伺服器清單,依照可用性次序來排序清單,並將清單傳送給 Notes。

8. Notes 會開啟清單中第一個伺服器 (可用性最高的伺服器) 上的抄本。如果無法再使用該伺服器,Notes 會開啟清單中下一個伺服器上的抄本。本範例中,伺服器 2 是可用性最高的伺服器。

當 Notes 用戶端關閉時,會將叢集快取記憶體的內容儲存在檔案 CLUSTER.NCF 中。用戶端每回啟動時,便會將 CLUSTER.NCF 中的資訊大量填入叢集快取記憶體中。