Azure Functions

不只是事件驅動的無伺服器計算

使用無伺服器計算,來加速並簡化應用程式的開發

使用 Functions 更有效率地進行開發。Functions 是無伺服器計算平台,可解決複雜的協調問題。在本機建置並偵錯,而不需在雲端大規模進行額外設定、部署和作業,並使用觸發程序和繫結整合服務。

可根據您的工作量自動且有彈性地調整,讓您能專注於提升價值,而不必費心管理基礎結構

由觸發程式和繫結構成的整合式程式設計模型,能協助您回應事件,以及順暢地連線至其他服務

開發體驗相當完整,能讓您以整合的工具與內建 DevOps 功能進行建置、偵錯、部署和偵錯作業

豐富的程式設計語言和主控選項 - 您總是可以針對每個案例挑選最適合的項目,並快速調整以符合商務需求

提升您的整體開發體驗

利用 Functions 完整且全面的開發體驗,在 Windows、macOS 和 Linux 等主要平台上進行建置與偵錯,或在雲端中進行部署與監視。在 Visual Studio 與 Visual Studio Code 上使用與整個 Azure 平台完全整合的 Functions 延伸模組和範本,來提升本機電腦的開發速度和效率。 使用您慣用的程式碼編輯器和 Azure Functions Core Tools 進行開發。使用 Azure Pipelines 設定持續整合與持續傳遞 (CI/CD),並透過 Azure 監視器取得生產環境中應用程式效能的智慧型主動式見解。

設定本機開發環境 了解如何使用 Functions 的 CI/CD 管線將傳遞自動化

簡化複雜的協調挑戰解決方法

除非您需要使用無伺服器函式來解決具狀態的問題,否則這些函式都僅供短期存留且為無狀態。只要將流程定義編碼,即可透過完全受控的方式移除限制,而不需佈建更多資源。使用 Durable Functions 延伸模組,以程式設計方式,簡化事件驅動應用程式中複雜的具狀態協調需求。您也可以在宣告式工作流程上使用函式,以利用 Azure Logic Apps 提供的 250 多種連接器。

深入了解 Durable Functions

不需將整合寫入程式碼,即可連線至其他服務,加快解決方案開發速度

只針對重要的商務作業撰寫程式碼。使用以觸發程序和繫結為基礎的程式設計模型,讓無伺服器應用程式回應事件並順暢地連線至其他服務,進而節省編碼時間。使用 Functions 與適合微服務的方式,來建置可調整性更高且更穩定的應用程式。

了解如何使用觸發程序和繫結以節省時間

選擇您應用程式的最佳主控選項

應用程式各不相同,因此沒有一種主控方案能適應全部的應用程式。您可從雲端中的按執行次數付費或 IoT 裝置的邊緣運算等選項,挑選最符合您商務需求的 Functions 方案。將相同程式碼部署至多個目標:雲端服務本身、您自己的基礎結構、Azure Stack 或 Azure IoT Edge。

了解主控方案 使用 Azure Functions Core Tools 在任何位置執行程式碼

開發您的未來

立即使用您偏好的技術堆疊開始編碼,而不需學習新的語言或架構。不論是 Web 服務、API、Machine Learning 工作流程或自動化指令碼,您都可以為各個獨特案例挑選偏好的程式設計語言。

查看支援的語言

使用內建的安全性和監視,來建立可靠的無伺服器應用程式

  • 使用 Azure Application Insights,來監視及分析程式碼效能。使用 Azure Monitor 的應用程式對應和分散式追蹤,跨應用程式的所有元件,找出瓶頸和故障作用區。
  • 使用 Azure Key Vault,找出應用程式設定的來源,同時完整控制存取原則和稽核歷程記錄,而不需變更程式碼。
  • 透過 Functions 進階方案的虛擬網路連線功能隔離網路,藉由閘控傳入流量,並定義應用程式限制,以確保輸出流量進入安全的虛擬網路。
  • 設定服務等級的受控身分識別,以讓應用程式輕鬆存取其他受 Azure Active Directory 保護的資源。
  • 使用 Azure Active Directory、Microsoft 帳戶和外部提供者 (如 Twitter、Facebook 和 Google) 的內建驗證功能,授與應用程式的存取權。

選擇適合您商務需求的主控方案

使用量方案

可自動調整,並僅需支付執行 Functions 時的計算資源。採用使用量方案時,系統會根據傳入事件的數目,動態新增和移除 Functions 主機的執行個體。

Premium 方案

在視需求自動調整時,使用預備好的背景工作來執行應用程式 (在閒置後也不會有任何延遲)、在更強大的執行個體上執行,並連線至 VNET。

Azure App Service 方案

依照標準 App Service 方案費率在 App Service 方案中執行 Functions。適合長時間執行的作業,以及需要更能預測的調整和成本控制的情況。

開始使用 Functions

文件

了解如何搭配快速入門指南、教學課程和程式碼範例使用 Functions。

查看文件

Microsoft Learn

使用本引導式學習路徑來精通 Functions 的基礎。

了解如何建立無伺服器應用程式

無伺服器運算逐步指南

使用本逐步指南,來建置和監視事件驅動的應用程式。

取得電子書

GitHub 存放庫

存取開放原始碼的 Functions 執行階段和延伸模組。

查看程式碼

使用 Functions 建置這類解決方案

使用 Node.jsMicrosoft .NET 的無伺服器 API

內建 AI 的 Web 應用程式

適用於事件驅動案例的無伺服器微服務

無伺服器架構的機器學習工作流程

適用於檔案和即時資料的資料處理管線

具有即時功能的無伺服器應用程式

使用 Functions 開始建置應用程式的三個步驟

建立 Azure 免費帳戶,並取得 12 個月的免費服務、可探索服務 30 天的 $200 點數,以及超過 25 項永遠免費的服務。
使用 5 分鐘的快速入門指南,在 .NETJavaScriptJavaPython 上建立您的第一個函式。
您可以在文件程式碼範例資源庫預先建置的元件庫中,尋找靈感並探索詳細的 Functions 概念。

了解客戶如何使用 Azure Functions

提升開發速度

雲端式電子探索平台可相對縮短開發時間;相較於傳統方法的四個月,使用 Functions 只需一週。

閱讀案例

Relativity

改善複雜商務問題的處理時間

FUJIFILM Software 使用 Azure Durable Functions 縮短處理時間,並啟用每場棒球賽平均 3,000 張相片的當日標記。

閱讀案例

Fuji Film

實現更高的成本效益與 ROI

直接。使用 Functions 時,一個使用者可以產生五倍以上的交易,且只需使用虛擬機器四分之一不到的成本。

閱讀案例

DirectOne

Reduce service integration time

Hotailors can integrate three times as many new suppliers in the same amount of time using Functions.

閱讀案例

Hotailors

Azure Functions updates, blogs, and announcements

Functions 常見問題

  • Functions 可提供各種層級的語言支援,包括 C#、JavaScript、F#、Java 和 Python。

    查看所有支援的語言

  • 採用使用量方案和 App Service 方案的 Functions 應用程式,其有 99.95% 的時間為可執行或可供使用。

    查看 Functions 的完整 SLA

  • Functions 可在下列不同模式中執行:使用量方案、Azure App Service 方案和進階方案。

    比較不同方案的主控和調整功能

  • 使用觸發程序和繫結,避免以寫入程式碼的方式存取 Azure Blob 儲存體和 Azure Cosmos DB。觸發程序可讓函式執行,而繫結是可將函式與另一個資源連線的宣告。

    查看 Functions 支援的所有觸發程序和繫結

  • 使用您慣用的程式碼編輯器和開發工具,在本機電腦上建立並測試函式。將本機函式連線至即時 Azure 服務,並在本機電腦上使用完整的 Functions 執行階段進行偵錯。在本機電腦上開發函式的需求取決於您偏好的程式設計語言和工具而定。

    查看本機開發環境

使用 Azure 免費帳戶,取得每個月 1 百萬次免費 Functions 執行。