計算負載模式

已完成

如果連至雲端資源 (例如 VM 或 VM 集合) 或 Web 應用程式的流量不變,則不需進行調整。 雲端管理員可以直接佈建處理負載所需的執行個體數目,並使用它來完成。 但是,流量模式「確實」會隨著時間變更,有時是可預測的,有時則是不可預測的。 在真實世界中,管理員必須診斷其所管理之資源的負載,並使用調整來確保系統能夠跟上需求。

在討論如何進行調整之前,讓我們先討論「為什麼」要藉由細分 VM 和其他雲端資源所經歷的一些常見負載模式來進行調整。

持續成長

需要調整的最常見動力之一是需求持續成長。 圖 1 顯示某家公司的網站在 24 個月內的流量。 該公司正在快速成長,而其網站流量反映了這一點。 如果我們假設一部 Web 伺服器每個時間單位可以處理 5,000 個要求,該公司一開始可能有三或四部 Web 伺服器,但兩年後大約需要 20 部,才能跟上日益增加的需求,並繼續為客戶提供更好的服務。

圖 1:持續成長。

圖 1:持續成長。

持續成長是最容易彌補的負載模式之一,因為變更是穩定且漸進的。 我們可能會使用實體伺服器進行調整,因為我們可以預期何時需要下一部伺服器 (或下一組伺服器),而且有數週 (甚至數月) 可以準備,但是雲端運算允許我們在數分鐘內讓新的虛擬伺服器上線。 此外,儘管 24 個月的趨勢顯示穩定且可預測的成長,但負載可能會在較短的時間週期內大幅變動。 相較於使用實體伺服器進行調整,雲端運算更適合微趨勢。

不斷變動的負載

在相對較短的時間週期內以無法預期的方式載入變動時,雲端運算所提供的快速彈性是不可或缺的。 圖 2 顯示網站在 24 小時期間內的負載。 再次假設一部伺服器每個時間單位可以處理 5,000 個要求,則一天內所需的伺服器數目從 2 部到 16 部不等。 我們可以隨時讓 16 部虛擬 Web 伺服器保持上線狀態以容納此流量,但請記得,雲端服務提供者會對 VM 進行收費 (即使閒置時也一樣)。 多餘的容量不僅浪費能源,而且成本大約會變成兩倍。

圖 2:不斷變動的負載。

圖 2:不斷變動的負載。

循環負載

圖 3 顯示的負載會以一般且稍微可預測的模式增加和減少,例如,要求會在工作時間內上升,並於晚上和夜間回復。 此負載在尖峰時大約需要 20 部伺服器來處理需求 (再次假設每部伺服器每個時間單位 5,000 個要求)。 一天 24 小時輪流使用實體伺服器是不合理的情況,但可根據排程輕鬆佈建和取消佈建虛擬伺服器,以確保伺服器容量大致上會與需求相等。 每天有 12 小時處於閒置或輕量使用的實體伺服器,代表不必要的 CapEx 和不需要的能源使用量。 虛擬伺服器也有成本,但它們可在不需要時取消佈建,並在需求要求它時再次快速建立。

圖 3:每 24 小時重複一次的循環負載。

圖 3:每 24 小時重複一次的循環負載。

無法預測的高載

從成本和維護的觀點來看,最難處理的模式之一是發生無法預測的高載 (圖 4)。 如果尖峰是可預測的 (例如,若網站提供的比薩外送服務在週末和假日經歷較高的負載),則可規劃額外的容量。 但如果無法預測尖峰,我們就必須隨時準備處理它們。

圖 4:無法預測的高載。

圖 4:無法預測的高載。

我們可能將超額成本 (為了處理尖峰負載而佈建,但在流量較低期間相對閒置的伺服器成本) 視為曲線頂端與繪製來穿過最高點之水平線間的區域。 在那種情況下,圖 4 中針對負載為每個時間單位提供 100,000 個要求的容量成本,明顯高於圖 3 中提供對等容量的成本。

如果我們可以預測尖峰需求的程度 (不一定是它的時間),而不在意成本,則可佈建足夠的伺服器來處理最高的負載,以隨時提供足夠的容量。 雲端運算可讓我們在需要資源時讓其上線,並在不需要時使其離線 (並停止產生費用)。 彈性是藉由「調整」雲端資源來制定的。 讓我們更仔細地檢查調整的概念,並了解為什麼它是雲端運算經濟效益的關鍵因素。

檢定您的知識

1.

假設一部伺服器每個時間單位可以處理 5,000 個要求,而網站所經歷的負載會相對平均地變動 (從低點 5,000 個到尖峰 25,000 個)。 此網站是使用虛擬機器裝載於雲端,而每部 VM 的成本是每天 $4。 在提供調整大小以符合需求的彈性容量,以及調整大小以處理尖峰負載的固定容量之間,每年的成本差異大約是多少?