Azure API 管理執行個體的容量
適用於:開發人員 |基本 |基本 v2 |標準 |標準 v2 |Premium |進階 v2
API 管理提供 Azure 監視器計量來偵測系統容量的使用、協助您針對閘道問題進行疑難排解,並做出是否要調整或升級 API 管理實例以適應更多負載的明智決策。
本文說明容量計量及其運作方式、示範如何在 Azure 入口網站中存取容量計量,以及建議何時考慮調整或升級 API 管理實例。
注意
目前,此功能無法在工作區中使用。
重要
本文介紹如何根據容量計量來監視及調整 Azure API 管理實例。 然而,當實例達到其容量時,它不會進行節流以防止多載。 相反地,它會像多載的網頁伺服器一樣:延遲增加、連線遺失和逾時錯誤。 API 用戶端應該像處理其他外部服務一樣準備好處理這些問題,例如使用重試原則。
必要條件
若要遵循本文中的步驟,您必須在支援容量計量的其中一個層級中擁有一個 API 管理實例。 如需詳細資訊,請參閱建立 Azure API 管理執行個體。
可用的容量計量
v2 服務層和傳統層提供不同的容量計量。
在 v2 層中,提供下列計量:
閘道的 CPU 百分比 - 閘道單位所使用的 CPU 容量百分比。
閘道的記憶體百分比 - 閘道單位所使用的記憶體容量百分比。
這些計量的可用彙總如下。
- 平均 - API 管理實例的每個單元中跨閘道程序所使用的容量的平均百分比。
- 最大 - 閘道程序中最大使用量的容量百分比。
CPU 和記憶體使用量會揭露下列項目所取用的資源數量:
- APIM 管理資料平面服務,例如處理要求,其中可能包括轉送要求或執行原則。
- APIM 的管理平面服務,例如管理透過 Azure 入口網站或 Azure Resource Manager 套用的動作,或來自開發人員入口網站的負載。
- 選取的作業系統程序,包括與新連線上的 TLS 交握成本相關的程序。
- 平台更新,例如執行個體基礎計算資源上的作業系統更新。
- 部署的 API 數目,無論是否處於活動狀態,都可能消耗額外容量。
容量計量行為
在現實生活中,容量計量可能會受到許多變數的影響,例如:
- 連線模式 (要求新連線與重複使用現有連線)
- 要求和回應的大小
- 每個 API 上所設定的原則或傳送要求的用戶端數目。
要求上的作業越複雜,容量使用量就越高。 例如,複雜的轉換原則所取用的 CPU,會比簡單要求轉送所取用的還多。 緩慢的後端服務回應也會增加它。
重要
容量計量並不是正在處理的要求數目的直接量值。
即使未處理任何要求,容量計量也可能間歇性地飆升或大於零。 之所以如此,是因為在決定是否要調整執行個體時,不應將系統或平台特有的動作列入考量。
儘管容量計量旨在顯示 API 管理實例的問題,但在某些情況下,問題不會反映在這些計量的變更中。 此外,低容量計量並不一定意味著您的 API 管理實例沒有遇到任何問題。
使用 Azure 入口網站來檢查容量計量
存取入口網站中的計量以了解一段時間內使用了多少容量。
- 在 Azure 入口網站中瀏覽至您的 API 管理執行個體。
- 在左側功能表的 [監視] 下方,選取 [計量]。
- 從可用的計量中選取閘道的 CPU 百分比或閘道的記憶體百分比計量。 選擇預設的平均彙總或選取最大彙總以查看尖峰使用量。
- 從區段頂端列選取所需的時間範圍。
重要
目前,容量計量也會顯示在 v2 層實例的入口網站中。 不過,它不支援在 v2 層中使用,且會顯示 0 的值。
注意
您可以設定計量警示,即可得知有非預期的情況發生。 例如,當您的 API 管理實例超過其預期 CPU 或記憶體使用高峰超過 20 分鐘時,您會收到通知。
使用容量來做出調整決策
使用容量計量來決定是否調整 API 管理實例以容納更多負載。 以下是一般考量:
- 查看一下長期趨勢和平均。
- 忽略很可能與負載增加無關的突增 (請參閱容量計量行為一節的說明)。
- 一般而言,當容量計量值長時間 (例如 30 分鐘) 超過 60% - 70% 時,則應升級或調整您的實例。 不同的值或許更適合您的服務或案例。
- 如果您的實例只設定了 1 個單位,當容量計量值長時間超過 40% 時,則應升級或調整您的實例。 這項建議以在基礎服務平台中保留客體作業系統更新容量的需求為基礎。
提示
如果您可以事先評估流量,請在您預期的工作負載上測試 APIM 執行個體。 您可以逐漸增加租用戶的要求負載,並監視尖峰負載對應的容量計量值。 請遵循上一節的步驟,使用 Azure 入口網站來了解任何特定時刻使用了多少容量。