延展性是增加容量到您系統的能力,通常增加系統資源,但是不變更部署架構。在需求分析期間,您通常會根據業務需求和之後的使用分析來建立系統預期成長的設計。這些系統使用者數目的設計,以及符合其需求的系統容量,經常是與實際部署系統的數目會有顯著差異的評估。您的設計應該有足夠的彈性容許規劃中的差異。
可延伸的設計包括足夠的潛在容量,以便在系統使用額外資源升級之前,能夠處理增加的負載。可延伸的設計能可輕易調整以應付增加的負載,而無須重新設計系統。
潛在容量是您可以將額外的效能和可用性資源容納進系統中的延展性層面,以便系統可以處理不尋常的尖峰負載。您也可以監視在部署的系統中如何使用潛在容量,協助判定何時增加資源來調整系統。潛在容量是將安全性帶入您設計中的一種方式。
使用實例的分析可協助找出會造成不尋常尖峰負載的方案。使用這項不尋常尖峰負載的分析,加上容納非預期成長的因素,設計出可將安全性帶入系統的潛在容量。
您的系統設計應該能夠處理預期容量一段合理的時間,通常是作業的最初 6 到 12 個月。維護週期可在需要時用來增加資源或增加容量。理想狀況下,您應該可以定期排程系統的升級,但是預測需要的容量增加通常會很困難。依靠資源的仔細監視以及業務設計來判定何時要升級系統。
如果您規劃在遞增式階段中實作解決方案,您必須在每個遞增式階段,將系統容量的增加和其他排程的改善功能排程為同時發生。
本節中的範例說明以水平和垂直方式調整實作 Messaging Server 的解決方案。以垂直方式進行調整是透過為伺服器增加額外的 CPU 來處理增加的負載。 以水平方式進行調整是透過增加額外的伺服器,將負載分散來處理增加的負載。
範例基準假設為由兩個訊息儲存區實例支援 5 萬個使用者基礎,且已分散這些實例以取得負載平衡。每個伺服器有兩個 CPU,所以總共有 4 個 CPU。下圖顯示如何調整這個系統,以便為 250,000 個使用者和 2,000,000 使用者處理增加的負載。
延展性範例顯示垂直調整和水平調整之間的差異。這個圖表不會顯示調整時需考慮的其他因素,例如負載平衡、容錯移轉和使用模式中的變更。