Azure Functions 的運作方式
- 3 分鐘
在這裡,您會了解如何使用 Azure Functions 來開發無伺服器結構,並使用它提供的各種功能實作。
您也會深入了解 Azure Functions 的運作方式。 可協助您透過充分利用 Azure Functions 來判斷如何符合組織需求的資訊。
Azure Functions 是無伺服器計算解決方案,可讓您撰寫較少的程式碼。 這是平台即服務供應項目,因此您不需要擔心裝載應用程式,並可節省成本。
Azure Functions 是處理資料、整合系統、使用物聯網 (IoT),以及建置簡單 API 和微服務的絕佳解決方案。
調整函數應用程式
執行函式所在的內容,稱為函式應用程式。 函數應用程式是部署、管理和調整函式的單位。 函式應用程式內的函式全都會共用相同的設定和連線。
在使用量和進階方案中,Azure Functions 會藉由新增更多函式應用程式執行個體來調整 CPU 和記憶體資源。 執行個體數目取決於觸發函式的事件數量。 由於函式應用程式內的所有函式都會共用應用程式執行個體內的資源,因此它們會同時調整。
Azure Functions 監視
Azure Functions 提供與 Azure Application Insights 的內建整合,以監視函式。 Application Insights 會收集記錄、效能和錯誤資料。 它可協助您偵測效能異常、診斷問題,並進一步了解函式的使用方式。
Application Insights 檢測已內建於 Azure Functions 中。 有了 Application Insights 整合後,遙測資料會傳送至連線的 Application Insights 執行個體。 此資料包括 Functions 主機所產生的記錄、從函式程式碼撰寫的追蹤,以及效能資料。
注意
除了來自函式和 Functions 主機的資料之外,您也可以從 Functions 調整控制器收集資料。
下圖顯示如何在函數應用程式的 Application Insights 中檢視資料的範例。
Azure Functions 元件
下表描述 Azure Functions 的主要元件:
| 元件 | 描述 |
|---|---|
| 函式觸發程序 | 觸發程式是讓函式執行的項目。 觸發程序會定義叫用函式的方式。 一個函數只能恰有一個觸發程序。 |
| 函式繫結 | 繫結至函式是以宣告方式,將另一個資源連線到函式的方式;繫結能以輸入繫結、輸出繫結或以上兩種方式連線。 繫結中的資料會提供給函式作為參數。 如果您不想要或無法使用繫結,連線到服務時,您仍然可以在函式中使用用戶端 SDK。 |
| 函式執行階段 | Azure Functions 目前支援數個版本的執行階段主機。 Functions 也支援許多不同的執行階段,例如 .NET Core、Node、JavaScript、Java、PowerShell 和 Python。 在開發期間,您可以在本機電腦上安裝 Functions 執行階段,並使用 Azure Functions Core Tools 在本機執行函式。 |
| API 管理 (APIM) | APIM 為您的 HTTP 觸發函式端點提供安全性和路由,以將其公開為真正的 REST API。 |
| 部署位置 | Azure Functions 部署位置可讓您的函數應用程式執行稱為「位置」的不同執行個體。 位置是透過公開可用端點公開的不同環境。 位置可讓您在安全的環境中測試 Azure 中的新版函式,然後將新版本順暢地交換至生產環境。 |
| 函數應用程式設定 | 連接字串、環境變數和其他應用程式設定會針對每個函式應用程式個別定義。 這些函數應用程式設定值在程式碼中可以作為環境變數加以讀取。 |
這些元件會共同運作,為應用程式和 DevOps 工程師提供完整的端對端平台,以使用 Azure Functions 開發無伺服器架構。