容量規劃考慮
- 5 分鐘
基本容量規劃從一些簡單的計算開始,但有一些因素可能會使程序複雜化。 除了簡單的目前和預測使用量號碼之外,您還必須考慮下列考慮:
- 服務限制與配額
- 成本限制
- 程式代碼和設定效率不佳
- 依賴
在此單元中,您將探討這些考慮如何影響您的容量規劃,以及如何解決每個考慮。
服務限制與配額
將雲端運算視為無限資源的趨勢。 與傳統的伺服器/資料中心模型相比,雲端的容量似乎無限。 雲端確實提供全新的規模層級。 然而,就像其他一切一樣,它確實有一些限制。 容量規劃牽涉到瞭解何時達到這些服務限制。
查看您的系統及其架構時,您必須瞭解您所使用的雲端服務限制。 舉例來說,預設情況下,在 Azure 中,每個虛擬機可用性設定最多容納 1000 台虛擬機。 如果您是新手,則可能會認為這些 VM 限制已相當足夠。 不過,當您達到該限制時,就無法布建更多 VM,這可能會導致中斷。
備註
對於新部署,請考慮使用可用性區域或彈性虛擬機器擴展集,而非可用性設定組。 可用性區域 透過將虛擬機分散在區域內物理上分隔的資料中心,提供更高的韌性。
同樣地,預設情況下,每個地區每個訂閱可有 250 個儲存帳號(這個上限可透過客服申請提高)。 這些限制都是可以增加的軟限制範例。 但某些服務有上限,您可以在下列連結中找到。
這些限制和配額是要注意和監視的事項。 讓我們看看如何做到這一點。
Azure portal
您可以在瀏覽窗格中的 [訂用帳戶 ] 下方的 [>] 區段中查看服務配額,以及與這些限制相關的位置。 你可以依服務類別篩選,如網路/運算,以及 Azure 區域。 這會顯示目前相對於限制的使用量。
透過程式碼
你可以使用任何Azure服務的 Usage - List 端點來取得目前的資源使用資訊,以及訂閱下計算資源的限制,如本截斷範例所示。 請查看 Azure REST API 參考以獲得最新穩定的 API 版本。
GET https://management.azure.com/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/usages?api-version=2024-07-01
{
"currentValue": 12,
"id": "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/westeurope/usages/virtualMachines",
"limit": 25000,
"name": {
"localizedValue": "Virtual Machines",
"value": "virtualMachines"
},
"unit": "Count"
}
你可以看到目前使用的虛擬機數量是 12 台,但上限是 25,000 台。 有些限制可以透過技術支援請求提高,因此務必提前了解何時可能接近門檻。
成本限制
縮放不僅僅是在發生問題時投入更多資源。 組織必須瞭解雲端環境的成本,而且新增更多資源通常等於更多成本。 請留意此成本,並與您的財務小組合作,以確保您已同意目前和預計的雲端支出。
您應該在最初設計系統時,以及執行已執行中系統的定期檢閱時,預測成本。 Azure 提供工具,能幫助你:
- 使用Azure計算器來規劃環境成本。
- 在 Azure 入口網站檢視目前及預計的每月支出。
- 在 Microsoft 成本管理 裡設定預算。 此工具可讓您檢查不同範圍的成本,包括管理群組、資源群組和訂用帳戶。
程式代碼和設定效率不佳
有時候,引導更多資源可以解決問題,但成本較高。 有時候調整不是解決方案,也不是完整的解決方案。 在某些情況下,看似需要擴展的需求,實際上可能是由程式碼撰寫或配置不佳引起的問題。
在擴充資源之前,您可以先找出 Bug 來節省金錢和時間。 此方法的一些範例包括:
- 如果你的資料庫設計不良,只有熱分割區,比如在龐大的 NoSQL 資料庫只用一個分割區,無論你怎麼擴展都會很慢。
- 如果您的資料庫查詢效率不佳,請在投入更多資源到資料庫之前,讓它們更具效能。 有時候,只要根據一般查詢將正確的索引新增至資料庫,就可以降低成本 100 倍。
- 如果逾時設定不正確,而資料庫連結會因伺服器與資料庫之間逾時不一致造成重試且可能導致飽和。 在此情況下,您需要先修正設定,再調整資料庫。
- 如果開發人員的程式代碼效率不佳,您可以撰寫更有效率的程式代碼來解決問題嗎? 或許程式碼並未在可能的情況下釋放記憶體,因此您在不必要時使用了較大的記憶體 VM。 這類修正可大幅節省成本。
依賴
解決本課程模組中所述某些問題所需的變更,通常與應用程式的開發人員有相依性。 這裡推薦的一些解決方案和最佳實務需要你和開發者之間的合作才能實現。
您可能無法自行實作所有這些建議。 不過,如果您了解雲端系統及其功能與特性,您可以成為改善系統及其延展性和可靠性的變更驅動程式。
檢定您的知識
意見反應
此頁面對您有幫助嗎?
No
需要本主題的協助嗎?
想要嘗試使用 Ask Learn 來釐清或引導您完成本主題嗎?