AWS Step Functions 入門
什麼是 AWS Step Functions?
AWS Step Functions 可讓您在幾分鐘內將彈性工作流程自動化新增到應用程式,而無需撰寫程式碼。使用 Step Functions 建構的工作流程包含內建錯誤處理、參數傳送、建議的安全性設定和狀態管理,有助於減少您需要編寫和維護的程式碼數量。
AWS Step Functions 是一項全受管服務,可讓您使用視覺化的工作流程,輕鬆地協調分散式應用程式與微型服務的元件。微型服務是透過網路相互通訊以完成更大目標的程序。作為微型服務集合建置的應用程式更具彈性且更易於擴展。可以使用 AWS Lambda 函數部署一個非常簡單的微型服務。
許多應用程式需要不止一種功能,通常具有兩種或三種功能的組合和模式。例如,您可能希望平行執行兩個函數,並將組合結果提供給第三個函數。您可以編寫大量程式碼來協調微型服務的互動,或者使用 AWS Step Functions 來協調您的工作流程。
如何開始使用 AWS Step Functions?
使用 Step Functions 很容易上手。您可以使用 Workflow Studio 快速開始建置,這是一個簡單的拖放式介面,用於呈現您的工作流程。使用 Step Functions,您能夠以狀態機器的形式定義工作流程,並指定要依順序或平行執行的任務,並視需合併分支邏輯。Step Functions 管理每次執行,透過中央稽核追蹤來追蹤每個步驟,並使用內建的 try-catch-finally 處理模式來管理任務逾時、重試和錯誤。
準備好開始使用了嗎?
遵循 Step Functions 自我引導研討會,瀏覽互動式模組,以進一步了解有關 Step Functions 函數的資訊。
嘗試入門教學系列來建立處理信用卡申請的基本工作流程。了解如何在 Step Functions 中使用常用狀態,例如映射、選擇、平行和任務等狀態。您會將您的工作流程與其他 AWS 服務整合,例如 AWS Lambda 和 Amazon Simple Notification Service。
瀏覽無伺服器工作流程集合。檢視工作流程模式集合,以使用 AWS SAM 和 CDK 範本快速建置應用程式。依使用案例篩選並將範本或工作流程定義直接複製到您的應用程式。
無伺服器工作流程的核心概念
在使用 Step Functions 時,您可能會遇到哪些無伺服器工作流程的核心概念?
下面我們將回顧一些最重要的概念及其定義,例如:通過狀態、平行狀態、選擇狀態、狀態轉換、元件可重用性和分支邏輯。
了解主要概念後,您就可以建立您的第一個 Step Functions 狀態機器。
AWS Step Functions 可讓您將個別工作協調為視覺化的工作流程,協助您迅速建立和更新應用程式。

您使用 Step Functions 建立的工作流程稱為狀態機器,而您工作流程的每一個步驟稱為狀態。

任務透過協調另一項 AWS 服務或幾乎可以在任何地方託管的應用程式,來執行工作。

傳輸狀態將輸入當成輸出傳遞至下一個狀態。 您也可以使用等待狀態在有需要時延遲執行。

平行狀態同時開始多項分支執行,例如一次執行多個 Lambda 函數。

選擇狀態可新增分支邏輯至您的狀態機器,並且根據輸入做出決策。

當您執行狀態機器時,從一個狀態移動到下一個狀態就稱為狀態轉換。

您可以重複使用元件,輕鬆編輯步驟的順序,或隨著需求變更而切換任務狀態呼叫的程式碼。

就這麼簡單! 您現在已經熟悉 Step Functions. 的核心概念。何不建立您的第一個狀態機器?

10 分鐘教學
為協助您入門,我們提供了專為初學者設計的 10 分鐘 AWS Step Functions 教學。了解如何建立無伺服器工作流程、處理無伺服器應用程式中的錯誤,以及安排無伺服器工作流程。
Step Functions 入門教學將教授如何使用 AWS Step Functions 來設計和執行可協調多個 AWS Lambda 函數的無伺服器工作流程;如何使用 AWS Step Functions 透過內建重試和擷取功能來處理工作流程運行時間錯誤;以及如何協同運作無伺服器工作流程以回應依排程觸發的事件。
10 分鐘
了解如何使用 AWS Step Functions 設計和執行協調多個 AWS Lambda 函數的無伺服器工作流程
IAM、Lambda、Step Functions
10 分鐘
使用 AWS Step Functions 內建的重試和 Catch 功能來處理 AWS Lambda 執行時間不同邏輯的錯誤情形 (視引發例外狀況而定)。
IAM、Lambda、Step Functions
探索更多 AWS Step Functions 資源