

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

# Amazon EventBridge
<a name="eventbridge"></a>

[Amazon EventBridge](https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-what-is.html) 是無伺服器事件匯流排服務，通常做為事件驅動型架構 (EDA) 的基礎。您也可以使用它在微服務之間以非同步方式路由和傳遞訊息。生產者使用 EventBridge 將事件發佈至匯流排。您可以根據事件的內容來設定符合事件的規則，並選擇一或多個符合該規則的事件要交付的目標。EventBridge 支援[各種規則目標](https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-targets.html)。使用事件匯流排可讓您將生產者與消費者分離，並合併您的路由和交付邏輯。

在 EventBridge 中，您也可以建立排程規則，以便在特定時間採取動作。您可以使用以 Cron 為基礎的表達式和以速率為基礎的表達式來定義事件。

[EventBridge 管道](https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-pipes.html)可讓您將訊息從[來源](https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-pipes-event-source.html)輸送到[目標](https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-pipes-event-target.html)，而無需使用 等運算服務 AWS Lambda。例如，假設您有一個接收訊息的 SQS 佇列，這應該會觸發 AWS Step Functions 狀態機器。您可以使用 EventBridge 管道來為您執行此操作，而不是建立具有事件來源映射來取用佇列訊息的 Lambda 函數，以及使用 AWS SDK 撰寫程式碼來叫用狀態機器，而無需撰寫任何自訂程式碼。

EventBridge 通常與其他簡訊服務搭配使用，例如 Amazon SQS 和 Amazon SNS。例如，將事件交付至 SQS 佇列，可讓接收服務彈性地在能夠使用訊息時，以獨立於事件產生速率的速率來取用訊息。同樣地，您也可以將應該散發的事件傳遞給 SNS 主題的大量訂閱者。

## 指引
<a name="eventbridge-guidance"></a>

在下列情況下使用 EventBridge：
+ 您不需要服務之間的同步通訊。
+ 您想要將訊息路由邏輯與微服務分離。微型服務只會產生事件並將其發佈到事件匯流排，而感興趣的服務會建立規則來比對和交付這些事件。
+ 您需要將訊息從一個支援的服務傳遞到另一個服務。

在下列情況下，請考慮其他 服務：
+ 您需要嚴格排序事件。在這些情況下，請考慮 Amazon SQS FIFO 佇列或 Amazon SNS FIFO 主題。或者，請考慮事件串流服務，例如 Amazon Kinesis Data Streams 或 Amazon Managed Streaming for Apache Kafka (Amazon MSK)。