Azure Functions 概觀
Azure Functions 是無伺服器解決方案,可讓您撰寫較少的程式碼、維護較少的基礎結構,並節省成本。 雲端基礎結構會提供讓應用程式保持執行所需的所有最新資源,而不需要擔心部署和維護伺服器。
使用對您而言最具生產力的語言,專注於處理最重要的程式碼,而 Azure Functions 會為您處理其餘部分。
如需使用 Azure Functions 的最佳體驗文件,請從本文頂端的原生 Azure Functions 語言清單中選擇您慣用的開發語言。
案例
Azure Functions 提供全面的事件驅動觸發程序與繫結集合,可將您的函式連線至其他服務,而不需要撰寫額外的程式碼。
以下是常見,但「不是全部」的 Azure Functions 整合式案例集合。
如果您想要... | 接著... |
---|---|
處理檔案上傳 | 在 Blob 儲存體中上傳或變更檔案時執行程式碼。 |
即時處理資料 | 在資料儲存過程中從事件和 IoT 來源串流擷取和轉換資料。 |
依資料模型推斷 | 從佇列提取文字並將其呈現給各種 AI 服務,以進行分析和分類。 |
執行排程的工作 | 依預先定義的時間間隔執行資料清除程式碼。 |
建置可調整的 Web API | 使用 HTTP 觸發程序為您的 Web 應用程式實作 REST 端點集合。 |
建置無伺服器工作流程 | 使用 Durable Functions 從一系列函式中建立事件驅動的工作流程。 |
回應資料庫變更 | 在 Azure Cosmos DB 中建立或更新文件時,執行自訂邏輯。 |
建立可靠的訊息系統 | 使用佇列儲存體、服務匯流排或事件中樞處理訊息佇列。 |
這些案例可讓您使用新式架構模式來建置事件驅動的系統。 如需詳細資訊,請參閱 Azure Functions 案例。
開發生命週期
有了 Azure Functions,您可以使用最愛的開發工具以慣用語言撰寫函式程式碼,然後將您的程式碼部署至 Azure 雲端。 Azure Functions 提供在 C#、JAVA、JavaScript、PowerShell、Python 中開發的原生支援,以及使用更多語言 (例如 Rust 和 Go) 的功能。
Azure Functions 會直接與 Visual Studio、Visual Studio Code、Maven 和其他熱門的開發工具整合,以啟用順暢的偵錯和部署。
Azure Functions 也會與 Azure 監視器和 Azure Application Insights 整合,以提供雲端中函式的全方位執行階段遙測和分析。
託管選項
Functions 為您的業務需求和應用程式工作負載提供各種 裝載選項 。 事件驅動的縮放裝載選項範圍廣泛,包含只需支付執行時間的完全無伺服器 (使用量方案),以及一律保持熱執行體就緒來取得最快的回應時間 (進階方案) 等選項。
當您擁有過量的 App Service 裝載資源時,即可於現有的 App Service 方案中裝載函式。 當您需要來自函式的可預測縮放行為和費用時,這種專用裝載方案也是不錯的選擇。
如果您對函式執行階段環境和相依性想要有完全的控制,甚至可以在可完全自訂的容器中部署函式。 您的自訂容器可由 Azure Functions 裝載、部署為 Azure 容器應用程式中微服務結構的一部分,甚至是在 Kubernetes 中自我裝載。