本文介紹Function Compute在資源使用上的關鍵限制,包括函數配額、運行資源、觸發器、層、地區和鏡像大小等。協助開發人員,尤其是新手使用者避免在不瞭解函數原理時,因誤配或者代碼有誤而造成費用不可控的問題,例如迴圈調用、死迴圈等。
管理配額
Function Compute已成功接入阿里雲配額中心,您可以通過配額中心控制台查看Function Compute的配額額度。配額中心的更多資訊,請參見什麼是配額中心。
在配額中心控制台,您可以管理以下Function Compute的配額。
|
配額名稱 |
描述 |
預設限制 |
|
執行個體數上限 |
單個地區的執行個體數量上限 |
300個(以配額中心為準) |
|
CPU鏡像大小上限 |
非GPU函數部署時支援的壓縮後鏡像大小上限 |
10GB |
|
GPU鏡像大小上限 |
GPU函數部署時支援的壓縮後鏡像大小上限 |
30GB |
|
單個函數的層的數量上限 |
- |
5個 |
|
單個函數的觸發器數量上限 |
- |
50個 |
|
代碼部署套件大小限制 |
通過控制台、開發人員工具上傳或通過OSS指定程式碼封裝位置的程式碼封裝大小限制(壓縮為ZIP或JAR檔案) |
500MB |
在華東1(杭州)、華東2(上海)、華南1(深圳)、華北2(北京)、華北3(張家口)、華北5(呼和浩特)、中國香港、新加坡、日本(東京)、美國(維吉尼亞)和德國(法蘭克福)地區,代碼部署套件大小限制放開至500 MB;其餘地區為100 MB。
使用限制
Function Compute未接入配額中心的資源使用限制。如果現有資源不能滿足業務需求,並且確認表格中對應的資源項上限支援調整,可以通過提交工單或者加入DingTalk使用者群(群號:64970014484)與我們聯絡。
函數資源限制
|
限制項 |
資源上限 |
是否支援調整 |
|
單個函數最多支援配置NAS掛載點個數 |
5個 |
不支援 |
|
單個函數最多支援配置OSS掛載點個數 |
5個 |
不支援 |
|
單個執行個體並發度 |
1~200 |
不支援 |
函數運行資源限制
|
限制項 |
資源上限(CPU執行個體) |
資源上限(GPU執行個體) |
是否支援調整 |
|
臨時磁碟空間 |
10 GB |
60 GB |
不支援 |
|
檔案描述符 |
100000 |
100000 |
不支援 |
|
進程和線程總數 |
1024 |
1024 |
不支援 |
|
函數最大申請記憶體 |
32 GB |
32 GB |
不支援 |
|
函數最大已耗用時間 |
86400s |
86400s |
不支援 |
|
Initializer最大已耗用時間 |
300s |
300s |
不支援 |
|
PreStop最大已耗用時間 |
90s |
90s |
支援 |
|
函數同步調用請求本文承載大小 |
32 MB |
32 MB |
不支援 |
|
函數非同步呼叫請求本文承載大小 |
128 KB |
128 KB |
支援,最大支援調整到256 KB |
|
頻寬 |
1 Gbit/s~5 Gbit/s |
1 Gbit/s~5 Gbit/s |
不支援 |
|
單條日誌大小 |
32 KB |
32 KB |
不支援 |
|
代碼部署套件大小(通過SDK/API上傳,壓縮為ZIP並進行Base64編碼) |
100 MB |
不涉及 |
支援 |
上表中通過SDK上傳的ZIP包必須經過Base64編碼,編碼會造成原始程式碼封裝體積增大,另外,建立或更新函數時,除了程式碼封裝,請求body中還會包含函數配置在內的其他內容,因此,請確保Base64編碼後的程式碼封裝以及請求body中其他內容大小之和小於100 MB。
執行個體交付速度
|
資源項 |
資源上限 |
是否支援調整 |
|
執行個體交付速度 |
300個/分鐘 |
支援 |
觸發器限制
|
資源項 |
資源上限 |
是否支援調整 |
|
原生OSS觸發器單Bucket建立觸發器上限數 |
10個 |
不支援 |
如果原生OSS觸發器單Bucket建立觸發器上限數無法滿足您的需求,您可以使用EventBridge類別的OSS觸發器,支援單Bucket建立50個觸發器,您還可以向事件匯流排申請提升單個匯流排下事件規則數量配額,進一步提升單Bucket支援建立的觸發器個數。
層限制
|
限制項 |
資源上限(CPU執行個體) |
資源上限(GPU執行個體) |
是否支援調整 |
|
層大小 |
500 MB |
500 MB |
支援 |
|
層版本數量 |
100 |
100 |
不支援 |
|
單個函數的層的總大小 |
2 GB |
2 GB |
支援 |
單賬戶單地區資源限制
【GPU總卡數上限】包含【GPU卡數上限(隨請求彈性建立的執行個體佔用的卡數)】
|
資源項 |
卡型 |
預設限制 |
是否支援調整 |
|
GPU總卡數上限 |
Tesla系列 |
10卡 |
支援 |
|
Ada.1系列 |
3卡 |
||
|
Ampere系列 |
3卡 |
||
|
其他GPU卡型 |
0卡 |
||
|
GPU卡數上限(隨請求彈性建立的執行個體佔用的卡數) |
Tesla系列 |
3卡 |
|
|
Ada.1系列 |
1卡 |
||
|
Ampere系列 |
3卡 |
||
|
其他GPU卡型 |
0卡 |
Function Compute訪問其他雲端服務或雲資源限制
如果您所在地區已開通Function Compute訪問VPC內的資源的功能,那麼您的函數調用其他雲端服務或雲資源時,會受到以下網路限制。
-
無法使用傳統網路下ECS的內網IP地址訪問其伺服器上的資源,例如Web服務或者檔案系統等。需要使用公網IP地址訪問,或者將伺服器上的資源遷移到VPC中。
-
無法使用傳統網路下RDS的內網IP地址訪問RDS,需要使用其公網IP地址訪問,或者將RDS遷移到VPC中。
-
無法使用雲端服務提供的內網Endpoint訪問雲端服務,需要使用雲端服務提供的VPC Endpoint或者公網Endpoint訪問。
單帳號各地區計算節點限制
調度服務為使用者提供邏輯核和記憶體計算節點,各地區的計算節點限制如下表所示。
通過池化提供計算節點總限制一半的核和記憶體突發能力,當池化資源耗盡時,調度服務將以一定的擴容速度擴容,超過限額時產生限流錯誤。例如,您需要600 vCPU和1200GB記憶體,前300 vCPU和600GB記憶體將通過池化快速擴容完成,後300 vCPU和600GB記憶體將以指定的擴容速度完成擴容。
計算節點限制與函數規格、函數執行個體數關係說明
以華東1(杭州)地區為例,執行個體數上限為300個,不同函數執行個體規格,使用的總vCPU和記憶體不同,詳情如下。
-
假設函數的規格為1 vCPU和1024MB(1GB)記憶體,執行個體數滿額使用的情況下,總vCPU使用量為300 vCPU,總記憶體使用量量為300GB。300 vCPU和300GB記憶體未超出當前地區600 vCPU和1200GB限額,因此300個執行個體可以成功建立。
-
假設函數的規格為16 vCPU和32768MB(32GB)記憶體,執行個體數滿額使用的情況下,總vCPU使用量為4800 vCPU,總記憶體使用量量為9600GB。4800 vCPU和9600GB已經超出當前地區600 vCPU和1200GB限額。因此,實際不能成功建立300個執行個體,此時需要申請計算節點限額。
|
地區 |
CPU(vCPU) |
記憶體(GB) |
擴容速度 |
|
華東1(杭州) |
600 |
1200 |
360 vCPU/分鐘、720GB/分鐘 |
|
華東2(上海) |
600 |
1200 |
360 vCPU/分鐘、720GB/分鐘 |
|
華北2(北京) |
600 |
1200 |
360 vCPU/分鐘、720GB/分鐘 |
|
華北3(張家口) |
600 |
1200 |
360 vCPU/分鐘、720GB/分鐘 |
|
華南1(深圳) |
600 |
1200 |
360 vCPU/分鐘、720GB/分鐘 |
|
中國香港 |
300 |
600 |
180 vCPU/分鐘、360GB/分鐘 |
|
新加坡 |
300 |
600 |
180 vCPU/分鐘、360GB/分鐘 |
|
美國(維吉尼亞) |
300 |
600 |
180 vCPU/分鐘、360GB/分鐘 |
|
華北1(青島) |
100 |
200 |
60 vCPU/分鐘、120GB/分鐘 |
|
華北5(呼和浩特) |
100 |
200 |
60 vCPU/分鐘、120GB/分鐘 |
|
西南1(成都) |
100 |
200 |
60 vCPU/分鐘、120GB/分鐘 |
|
日本(東京) |
100 |
200 |
60 vCPU/分鐘、120GB/分鐘 |
|
德國(法蘭克福) |
100 |
200 |
60 vCPU/分鐘、120GB/分鐘 |
|
馬來西亞(吉隆坡) |
100 |
200 |
60 vCPU/分鐘、120GB/分鐘 |
|
印尼(雅加達) |
100 |
200 |
60 vCPU/分鐘、120GB/分鐘 |
|
美國(矽谷) |
100 |
200 |
60 vCPU/分鐘、120GB/分鐘 |
|
華北6(烏蘭察布) |
50 |
100 |
30 vCPU/分鐘、60GB/分鐘 |
|
泰國(曼穀) |
50 |
100 |
30 vCPU/分鐘、60GB/分鐘 |
|
英國(倫敦) |
50 |
100 |
30 vCPU/分鐘、60GB/分鐘 |
|
韓國(首爾) |
50 |
100 |
30 vCPU/分鐘、60GB/分鐘 |
|
沙特(利雅得) |
50 |
100 |
30 vCPU/分鐘、60GB/分鐘 |