抗逆力的最佳實務
本主題概述當 Oracle Blockchain Platform 企業資源配置執行處理的單一虛擬機器 (VM) 離線進行維護或意外失敗時,持續運作的最佳做法。
- 單一創始組織
- 具有一或多個參與者組織的創始人
請改用以 Enterprise 資源配置為基礎的執行處理來進行生產環境。這些執行處理會獨立調整 Hyperledger Fabric 元件和更高的容量組態。企業資源配置執行處理會自動將對等體、排序器及平台元件分散到各個可用性網域和容錯域,以提供基礎架構層次的容錯隔離。若要利用此行為並確保高可用性,請使用下列各節中所述的最佳實務。
背書原則
對於具有單一 (創始人) 組織的網路,請使用允許任何可用對等體背書交易的背書原則,例如 OR('Founder.member') 或 OutOf(1, 'Founder.member')。為創始組織部署至少兩個同儕。
對於具有創始者和一個參與者組織的網路,通常您可以使用下列原則:OutOf(1, 'Founder.member', 'Participant1.member')。對於更嚴格的組態,只有在冗餘存在時,才能使用 OutOf(2, 'Founder.member', 'Participant1.member')。除非兩個組織都有足夠的對等冗餘,否則請避免嚴格的原則,例如 AND('Founder.member', 'Participant1.member')。
如需詳細資訊,請參閱指定背書原則。
對等部署
每個組織至少部署兩個同儕。Oracle Blockchain Platform 會自動將對等分散到可用性網域和容錯域,以確保 VM 失敗後,至少會保留一個對等。
私人資料收集
如果您使用專用資料集合,請將需要對等值 (requiredPeerCount) 設為一或多個值,然後將專用資料集合定義中的對等計數上限值 (maxPeerCount) 設為兩個以上的值。確定每個專用資料收集至少有兩個對等體為成員,且至少兩個對等體會確認專用資料。需要對等值是將交易提案視為完成之前,必須成功接收私人資料的對等 (背書對等) 數目下限。
若為跨組織專用資料收集,請將必要的對等計數設定為大於單一組織的對等數目,並確保跨多個組織和 VM 進行分配。
如需詳細資訊,請參閱新增私人資料集合。
靠左訂購服務
使用預設的三節點 Raft 訂購服務。Oracle Blockchain Platform 會跨可用性網域和容錯域分配訂購者,讓訂購服務能夠處理單一節點故障。
錨點對等
在具有多個組織的網路中,每個組織至少設定一個錨點對等。若要提升韌性,請至少為每個組織設定兩個錨點對等。只有當網路中有多個 Oracle Blockchain Platform 組織執行處理存在時,才需要定錨點對等,因為它們會在不同組織間啟用以 gossip 為基礎的通訊和對等探索。
如需詳細資訊,請參閱新增錨點對等。
鏈碼部署
為了確保在對等無法使用時保持連續性,請在每個組織至少兩個對等上安裝並核准鏈碼。如果您的隱私權需求允許的話,您可以將這些部署分散到網路中的 Oracle Blockchain Platform 執行處理。
用戶端連線
將用戶端應用程式設定為絕不閂鎖至特定對等。請改為允許基礎從屬端程式庫處理對等選項。
備用狀態資料庫
狀態資料庫儲存在對等連接之所有通道的每個對等上。如果 VM 失敗,則在回復對等資料庫之前,該對等上的本機狀態資料庫會變成無法使用。Oracle Blockchain Platform 支援混合式狀態資料庫模型,外部 Oracle Database 可作為後備 (次要) 狀態資料庫。當備用狀態資料庫啟用時,狀態資料會保存在資料庫中的對等 VM 之外,而資料庫中的狀態資料可以視需要接管為主要狀態資料庫,從而提高持久性和復原能力。
- 啟用生產環境工作負載或重要工作負載的備用狀態資料庫
- 獨立部署 Oracle Database 與對等 VM。
- 設定 Oracle Database 以提供高可用性。
如需詳細資訊,請參閱 Create the Fallback State Database 。