全部產品
Search
文件中心

Function Compute:函數類型選型

更新時間:Nov 15, 2024

為滿足不同情境下的使用者需求,Function Compute提供事件函數、Web函數、任務函數和GPU函數四種函數類型。本文介紹Function Compute支援的函數類型的適用情境及差異,供您進行技術選型。

選型分析

對比項

事件函數

Web函數

任務函數

GPU函數

適用情境

按照Function Compute定義的介面編寫程式處理事件。

基於各個語言的流行架構(Java SpringBootNode.js ExpressPython FlaskGolang Gin等)編寫程式,或者遷移已有的架構應用。

對函數發起非同步呼叫,且需要追蹤並儲存非同步呼叫各個階段的狀態,可以選擇建立任務函數。

使用流行AI專案(Stable Diffusion WebUI、ComfyUI、RAG、TensorRT等)的容器鏡像建立GPU執行個體。

運行時環境

推薦使用內建運行時

推薦使用自訂運行時

推薦使用內建運行時

僅支援自訂容器運行環境

冷啟動

最快。程式碼封裝中不包含運行時,所以冷啟動最快。

較快。程式碼封裝是一個HTTP Server程式,體積較大,但不需要拉取ACR容器鏡像,所以冷啟動會較快。

最快。程式碼封裝中不包含運行時,所以冷啟動最快。

較慢。需要拉取ACR容器鏡像,所以冷啟動較慢。

程式碼封裝限制

500 MB未解壓程式碼封裝

15 GB未解壓鏡像

程式碼封裝格式

ZIP、JAR(Java)、檔案夾

參見什麼是Container RegistryACR

支援的執行個體類型

CPU執行個體

GPU執行個體

單一實例多並發

不支援

支援

不支援

支援

非同步任務

預設關閉

預設關閉

預設開啟

預設關閉

通過控制台建立函數

事件函數

如果您想按照Function Compute定義的介面編寫程式處理事件,請選擇事件函數。具體操作,請參見建立事件函數

image

Web函數

如果您想基於各個語言的流行架構(Java SpringBootNode.js ExpressPython FlaskGolang Gin等)編寫程式、自訂容器鏡像,或者遷移已有的架構應用,請選擇Web函數。具體操作,請參見建立Web函數

image

任務函數

如果您想對函數發起非同步呼叫,且需要追蹤並儲存非同步呼叫各個階段的狀態,可以選擇建立任務函數。任務函數預設開啟任務模式,您可以使用任務模式提交、查看、停止和重試非同步任務。詳情參見建立任務函數

image

GPU函數

如果您想使用流行AI專案(Stable Diffusion WebUI、ComfyUI、RAG、TensorRT等)的容器鏡像建立GPU執行個體,請使用GPU函數。具體操作,請參見建立GPU函數

image

相關文檔