無伺服器函式架構設計

無伺服器 架構會從需要執行的基礎結構中抽象化程式碼,將雲端平臺發展為純雲端原生程式碼。 Azure Functions是無伺服器計算選項,可支援執行單一動作的函式、小型程式碼片段。

搭配 Functions 應用程式使用無伺服器架構的優點包括:

  • Azure 基礎結構會自動提供應用程式大規模執行所需的所有補救伺服器。
  • 計算資源會動態配置,並立即自動調整以符合彈性需求。 無伺服器並不表示「無伺服器」,而是「較少伺服器」,因為伺服器只會視需要執行。
  • 微計費只會針對計算資源和程式碼用來執行的持續時間收費,以節省成本。
  • 函式 系結提供 各種 Azure 和協力廠商服務的宣告式存取,以簡化整合。

式是事件驅動。 HTTP Web 要求、訊息、排程或變更資料等外來事件 會觸發 函式程式碼。 Functions 應用程式不會撰寫觸發程式的程式碼,只會撰寫觸發程式的回應。 進入的障礙較低,開發人員可以專注于商務邏輯,而不是撰寫程式碼來處理基礎結構考慮,例如傳訊。

Azure Functions是 Azure 和 Azure Stack 中的受控服務。 開放原始碼 Functions 執行時間可在許多環境中運作,包括 Kubernetes、Azure IoT Edge、內部部署和其他雲端。

無伺服器和 Functions 需要新的思考方式,以及建置應用程式的新方法。 它們不是每個問題的正確解決方案。 如需無伺服器函式案例的範例,請參閱 參考架構

實作步驟

使用 Azure Functions 成功實作無伺服器技術需要下列動作:

  • 決定和規劃

    架構設計人員 和技術 決策者 (TDM) 執行 應用程式評量、進行或參加 技術研討會和訓練、執行 概念證明 (PoC) 或試驗 專案,並視需要進行架構設計研討會。

  • 開發和部署應用程式

    開發人員 會實作無伺服器 Functions 應用程式開發模式和做法、設定 DevOps 管線,以及採用網站可靠性工程 (SRE) 最佳做法。

  • 管理作業

    IT 專業人員 藉由自動化基礎結構布建來識別裝載組態、未來證明延展性,並藉由規劃商務持續性和災害復原來維護可用性。

  • 安全的應用程式

    安全性專業人員會處理Azure Functions安全性基本概念、保護裝載設定,並提供應用程式安全性指引。