天天看點

【Azure API 管理】APIM的容量名額(Capacity)資料異常高的情況記錄

問題描述

APIM從标準版降級到基礎版,在沒有使用者使用的情況,Capacity的名額平均顯示在80%以上。 這是什麼異常情況呢?

【Azure API 管理】APIM的容量名額(Capacity)資料異常高的情況記錄

問題分析

APIM的容量名額(Capacity)是 API 管理執行個體中負載的名額。 它反映資源用量(CPU、記憶體)和網絡隊列的長度。而其中的CPU以及記憶體名額監控的對象不僅僅包含用于處理Proxy和Management請求的APIM程序,還包含其他標明的系統程序。

【Azure API 管理】APIM的容量名額(Capacity)資料異常高的情況記錄

是以,即使未處理任何請求,Capacity名額也可能會出現間歇性的高峰或大于零。 之是以發生這種情況,是因為存在系統或平台特定的操作。在決定是否縮放執行個體時,不應考慮這些因素。

在對APIM資源進行降級的操作中,導緻Capacity升高的主要因素的是 可用記憶體 降低。執行降級操作後可用記憶體由 500MB 降至 160MB 左右。在Capacity高的時間段中,通過收集APIM執行個體的程序資訊。發現記憶體使用最高的3個程序分别為w3wp(IIS 伺服器),APIM Management(管理操作的元件),以及APIM Proxy(處理Proxy請求的元件)。總的來說, Capacity名額異常由于降級導緻記憶體不足而造成的,基礎版(Basic sku)的記憶體非常有限(2GB RAM),其中還必須托管全部的APIM元件。降級操作後,單台執行個體上的可用記憶體由500MB降至160MB,反映到 Capacity這一統計名額,既是統計名額由20%左右升高至75%以上。

參考資料

APIM Capacity:https://docs.azure.cn/zh-cn/api-management/api-management-capacity#what-is-capacity

當在複雜的環境中面臨問題,格物之道需:濁而靜之徐清,安以動之徐生。 雲中,恰是如此!

繼續閱讀