微服務協調 - AWS Step Functions

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

微服務協調

微服務架構將應用程式分解為鬆散耦合的服務。優點包括改善的可擴充性、提高彈性,以及加快產品上市時間。每個微服務都是獨立的,因此無需擴展整個應用程式即可輕鬆擴展單一服務或功能。個別服務是鬆散結合的,讓獨立團隊專注於單一業務流程,而不需要他們瞭解整個應用程式。微型服務也可讓您選擇哪些個別元件符合您的業務需求,讓您彈性變更選擇,而無需重新撰寫整個工作流程。不同的團隊可以使用他們選擇的程式設計語言和架構來處理他們的微服務,而且這個微服務仍然可以透過應用程式設計介面 (API) 與應用程式中的任何其他人通訊。

Step Functions 提供多種管理微服務工作流程的方法。對於長期執行的工作流程,您可以將標準工作流程與AWS Fargate整合搭配使用,協調在容器中執行的應用 對於需要立即回應的短期大量工作流程,同步 Express 工作流程是理想的選擇。這些可用於基於 Web 的或移動應用程序,這些應用程序通常具有短持續時間的工作流程,並且在返回響應之前需要完成一系列步驟。您可以直接從 Amazon API 閘道觸發同步快速工作流程,連線會保持開啟,直到工作流程完成或逾時為止。對於不需要立即回應的短期工作流程,Step Functions 提供非同步 Express 工作流程。

使用步驟函式的某些 API 協調流程範例包括:

同步或即時工作流程

  • 變更記錄中的值,例如更新員工的姓氏,並讓變更立即顯示在螢幕上。

  • 在結帳期間更新訂單,例如新增、移除或變更料號數量,然後立即將更新反映回客戶。

  • 執行快速處理工作,並立即將結果傳回給要求者。

容器協調

  • 使用 Amazon 彈性 Kubernetes 服務或亞馬遜彈性容器服務 (ECS) 在 Kubernetes 上執行任務,並與其他服AWS務整合,例如透過 Amazon SNS 傳送通知,做為相同工作流程的一部分。