iT邦幫忙

2025 iThome 鐵人賽

DAY 13
0
Build on AWS

動漫宅的 30 天 AWS Lakehouse 修行日誌系列 第 13

DAY13 雲端基礎章-Lambda、EventBridge 概念篇

  • 分享至 

  • xImage
  •  

簡介

在上篇「DAY12 雲端基礎章-S3 Data Lakehouse 儲存結構設計」 中,我們介紹了 Anime Data Lake 架構設計,今天要來介紹一下 AWS LambdaAmazon EventBridge 這兩個 Serverless 的服務。

⚡ 這兩個服務搭配起來,可以實現 事件驅動的自動化流程,大幅減少我們手動排程與維護伺服器的負擔。


什麼是 AWS Lambda?

AWS Lambda 是一個 Serverless(無伺服器)運算服務
你不需要準備 EC2 或伺服器,只要寫好程式碼,上傳到 Lambda,即可在事件發生時自動執行。

✨ 特色

  • 🔔 事件觸發:由 S3、DynamoDB、EventBridge、API Gateway 等觸發。
  • 📈 彈性擴展:根據事件數自動水平擴展,不需人工調整。
  • 💰 依使用付費:僅依據「執行次數」與「執行時間」計費。

💡 典型應用

  • 📂 檔案上傳後進行自動清理與轉換。
  • 🌐 API Gateway 的後端邏輯。
  • ⏰ 定時任務(透過 EventBridge)。

什麼是 Amazon EventBridge?

Amazon EventBridge 是一個 事件匯流排 (Event Bus)
它的角色就像是一個「事件轉運站」,接收來自 AWS 服務或應用程式的事件,然後根據規則 (Rule) 分送給不同的目標 (Target)。

✨ 特色

  • 🌍 事件來源廣泛:支援 AWS 各種服務事件、自訂事件,甚至 SaaS 平台事件。
  • 🎯 彈性路由:可透過條件過濾,精準分派到目標服務。
  • 內建排程:支援 Cron 表達式,可當成進階版排程器使用。

💡 典型應用

  • ⏰ 定時啟動 ETL Job。
  • 🔍 監聽 EC2、RDS、S3 等服務的事件並觸發自動化流程。
  • 🔗 跨系統事件橋接(例如 SaaS 與 AWS 整合)。

🚀 Lambda + EventBridge 可以解決的問題

當兩者搭配使用時,可以實現 事件驅動的自動化架構,涵蓋大部分雲端上的數據流轉需求。

1️⃣ 資料處理自動化

  • 問題:S3 每次有新檔案上傳時,要自動清理、轉換,或觸發 Glue。
  • 解法:S3 Put Event → EventBridge → Lambda → Glue Job → 存回 S3。

2️⃣ 排程任務 (Scheduler Job)

  • 問題:需要每天或每小時自動跑資料同步或報表。
  • 解法:EventBridge Schedule → Lambda → 執行邏輯。

3️⃣ 跨服務事件串接

  • 問題:不同 AWS 服務間的事件需要自動化邏輯。
  • 解法
    • DynamoDB 更新 → EventBridge → Lambda → 更新 OpenSearch。
    • EC2 狀態變更 → EventBridge → Lambda → 發 Slack 告警。

4️⃣ 低成本工作流

  • 問題:若只是小邏輯,不需要 EC2 或 Airflow 這種大型系統。
  • 解法:EventBridge 作為事件入口,Lambda 作為邏輯執行器,僅在需要時執行並付費。

🏁 結論與建議

透過 Lambda + EventBridge 的組合,我們可以:

  1. 無伺服器自動化(免維護基礎設施)。
  2. 🔗 事件驅動架構(更彈性、即時的資料流動)。
  3. 💰 低成本高彈性(按需付費,縮短開發週期)。

這對於 資料工程、雲端架構、事件驅動應用 都是非常方便的應用。

⚠️ 注意事項

  1. 要特別注意 Lambda 適合短時間任務(最長 15 分鐘),不要用來跑長時間批次,常有人拿來誤用。
  2. EventBridge 適合事件導向,不適合大規模事件處理;當事件流量龐大時,建議搭配 SQS 或 Kinesis 作為緩衝與傳輸管道。

下篇預告

下篇我們將進入 「DAY14 雲端基礎章-S3、Lambda、EventBridge 實作篇」,一起來實際建立 S3 的 Event Trigger 流程吧!


參考資料

[1] What is AWS Lambda?
[2] What Is Amazon EventBridge?
[3] AWS Blog: Serverless with Lambda
[4] AWS Solutions: Event-driven architecture
[5] What is Serverless?


上一篇
DAY12 雲端基礎章-S3 Data Lakehouse 儲存結構設計
系列文
動漫宅的 30 天 AWS Lakehouse 修行日誌13
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言