目標
- 類別: Game-Based Learning
- 課名: AWS Card Clash – an Architecture Design Game
- 關卡名稱(遊玩主題): CardClash_ServerlessDevelopement_第8關_無伺服器調度
透過遊玩本關,學習更深入的無伺服器服務架構,理解此系統如何分別用定時、Rule進行程式調度,以及如何記錄用來除錯的Log。
第八關 架構圖雛形

架構場景應用
Serverless Scheduling,無伺服器調度
此關架構建立一個可擴展的無伺服器作業調度程序,能夠每分鐘處理大量的分散式作業。
場景是定時觸發調度工作的程式後,進行工作調度、紀錄和根據Rule觸發執行調度後的工作以及進行通知。
卡牌功能說明
Service Cards:


- Amazon Cloudwatch
- 卡牌介紹:
可以觀察和監控 AWS、內部部署和其他雲端中的資源與應用程式的服務,也可以在自動控制面板中收集並視覺化即時日誌、指標和事件數據,簡化的基礎架構和應用程式維護。 - 本關功能:
記錄程式執行結果,以方便檢視和除錯。 - 服務網址:
https://aws.amazon.com/tw/cloudwatch/
- 卡牌介紹:


- Amazon DynamoDB
- 卡牌介紹:
是Amazon的無伺服器NoSQL資料庫服務,用來儲存結構化資料 - 本關功能:
作為系統中存放資料的地方,存放工作的資料。 - 服務網址:
https://aws.amazon.com/tw/dynamodb/
- 卡牌介紹:


- Amazon EventBridge
- 卡牌介紹:
是一種事件驅動服務,可跨AWS、現有系統或SaaS應用程式,讓跨系統能即時傳遞或處理事件、啟動工作流程。 - 本關功能:
定時觸發工作調度程式、並負責根據Rule觸發已經被分配調度好的工作。 - 服務網址:
https://aws.amazon.com/tw/eventbridge/
- 卡牌介紹:


- AWS Lambda
- 卡牌介紹:
是一種運算服務,可執行程式碼以回應事件並自動管理運算資源,無須伺服器或叢集 - 本關功能:
負責系統中的程式運行,執行工作調度和運行被分發的工作程式。 - 服務網址:
https://aws.amazon.com/tw/lambda/
- 卡牌介紹:


- Amazon SNS
- 卡牌介紹:
即Amazon Simple Notification Service,可以使用應用程式到應用程式(A2A)或應用程式到個人(A2P)兩種方式寄送 - 本關功能:
寄送通知給指定的Topic。 - 服務網址:
https://aws.amazon.com/tw/sns/
- 卡牌介紹:
Sercurity Cards:
- IAM
- 卡牌介紹:
全名AWS Identity and Access Management,是管理身分和AWS服務存取權的防護服務 - 本關功能:
在關卡中可消耗一點體力打出,保護指定的我方服務卡不被對手佔領,本關中的服務卡全部皆可使用。 - 服務網址:
https://aws.amazon.com/tw/iam/
- 卡牌介紹:
其他:

- AWS Management Console
- 卡牌介紹:
AWS管理主控台,是管理AWS服務的網路介面。 - 本關功能:
在關卡中打出可增加一點體力 - 服務網址:
https://aws.amazon.com/tw/console/
- 卡牌介紹:

- AWS CLI
- 卡牌介紹:
全名AWS Command Line Interface,即AWS命令列介面,是一種管理AWS服務的統一工具。可以透過指令來與 AWS 各項服務互動,不需透過 AWS 管理主控台。 - 本關功能:
在關卡中打出可以增加兩點體力 - 服務網址:
https://aws.amazon.com/tw/cli/
- 卡牌介紹:

- AWS CloudFormation
- 卡牌介紹:
是一種基礎設施即程式碼(IaC) 服務,可以幫助使用者利用程式建立、管理AWS或第三的服務,以及進行模型化。 - 本關功能:
在關卡中打出可增加三點體力 - 服務網址:
https://aws.amazon.com/tw/cloudformation/
- 卡牌介紹:
最終架構圖樣貌

總結
- 學習更深入的無伺服器架構
- 掌握AWS服務運用:
- Amazon Cloudwatch 可以用來記錄程式執行狀況,以方便用log進行debug。
- Amazon EventBridge 負責系統中的調度,本關中,既可以用來定時觸發程式運行,也可依照Rule觸發其他程式。
參考資料
- Service Card:
- Sercurity Cards 和其他: