概觀

問:什麼是 Amazon EventBridge?

Amazon EventBridge 服務讓您不用撰寫程式碼,即可即時存取 AWS 服務、自有應用程式和軟體即服務 (SaaS) 應用程式的資料變更。開始使用時,您可以在 Amazon EventBridge 主控台中選擇事件來源,然後從多項 AWS 服務中選取目標,這些服務包括 AWS Lambda、Amazon Simple Notification Service (SNS) 和 Amazon Kinesis Data Firehose 等。Amazon EventBridge 會以近乎即時的速度自動傳送事件。

問:如何開始使用 Amazon EventBridge?

登入您的 AWS 帳戶並前往 Amazon EventBridge 主控台,然後從合作夥伴 SaaS 應用程式和 AWS 服務清單中,選擇事件來源。如果您使用合作夥伴應用程式,請確保已設定 SaaS 帳戶以發出事件,並在 Amazon EventBridge 主控台中提供的事件來源部分接受該帳戶。Amazon EventBridge 會為您自動建立事件匯流排,以路由事件到這個匯流排。或者,您也可以使用 AWS SDK 指示您的應用程式,開始將事件發出到您的事件匯流排。視需要設定篩選規則並附加事件的目標,例如,目標可以是 Lambda 函數。Amazon EventBridge 會以安全且高度可用的方式,自動擷取、篩選及傳送事件至設定的目標。

問:是否可以將自己的事件發佈至 Amazon EventBridge?

是。您可以產生自訂應用程式層級事件,並透過服務的 API 將這些事件發佈到 Amazon EventBridge。您也可以設定按照週期產生的排程事件,然後可以在任何 Amazon EventBridge 支援的目標中處理這些事件。

問:事件的格式為何?

事件使用特定 JSON 結構。每一個事件的頂層信封欄位都相同,例如事件、時間戳記和區域的來源。後面接著詳細資訊欄位,是事件的主體。例如,當 Amazon Elastic Compute Cloud (EC2) Auto Scaling 群組產生一個新的 Amazon EC2 執行個體時,它會發出一個含有 source: “aws.autoscaling” 和 detail: "EC2 instance created successfully" 的事件。

問:如何篩選要傳送到目標的事件?

您可以利用規則來篩選事件。規則會比對符合指定事件匯流排的傳入事件,並將事件路由到目標以進行處理。一個規則可路由到多個目標,系統會並行處理所有目標。規則允許不同應用程式元件搜尋並處理與其相關的事件。規則可以藉由只傳遞特定部分或使用常數覆寫事件,先自訂事件,再傳送到目標。針對上一個問題所提供的範例,您可以建立事件規則,來比對符合 source: “aws.autoscaling” 和 detail: "EC2 instance created successfully",藉此在每次 Auto Scaling 群組成功建立 Amazon EC2 執行個體時可隨時收到通知。

問:如何保護存取 Amazon EventBridge 的安全?

Amazon EventBridge 已與 AWS Identity and Access Management (IAM) 整合,因此,您可以指定 AWS 帳戶中的使用者能夠執行哪些動作。例如,您可以建立一個 IAM 政策,將建立事件匯流排或附加事件目標的許可僅提供給組織中的特定使用者。

問:Amazon EventBridge 與 CloudWatch Events 有何關聯?

Amazon EventBridge 以 CloudWatch Events 為建立基礎,並擴展了 CloudWatch Events。其使用的服務 API 和端點相同,底下的服務基礎設施也相同。對現有的 CloudWatch Events 客戶來說,一切都沒有改變 - 您可以繼續使用相同的 API、CloudFormation 範本和主控台。客戶向我們反應 CloudWatch Events 是建置事件導向架構的最佳服務,因此,我們打造了新功能,讓我們的客戶連接自有應用程式和第三方 SaaS 應用程式的資料。摒棄納入 CloudWatch 服務的做法,我們以 Amazon EventBridge 的全新名稱推出這項功能,表明將擴展至 CloudWatch Events 原本開發做為監控使用的範圍。

問:我目前使用 Amazon CloudWatch Events,我想試用 Amazon EventBridge 的功能。是否需要將我的 Amazon CloudWatch Events 規則和許可移到 Amazon EventBridge?

否,現有 Amazon CloudWatch Events 使用者可以在新的 Amazon EventBridge 主控台和 API 中或在 Amazon CloudWatch Events 主控台和 API 中存取其現有的預設匯流排、規則和事件。

問:我目前使用 Amazon CloudWatch Events,我不需要 Amazon EventBridge 的功能。對我來說,會有什麼改變?

沒有任何改變。Amazon EventBridge 使用相同的 Amazon CloudWatch Events API,所以,您現有的所有 CloudWatch Events API 使用方法均維持不變。

問:未來某一天是否會淘汰 Amazon CloudWatch Events?

否,我們不會淘汰該 API 或該服務本身。Amazon EventBridge 會使用相同的 API,並且具有額外功能。將來一段時間後,Amazon CloudWatch Events 名稱會更改為 Amazon EventBridge。

問:哪些 AWS 服務已整合成為 Amazon EventBridge 的事件來源?

有超過 90 項 AWS 服務可以當成 EventBridge 的事件來源,這些服務包括 AWS Lambda、Amazon Kinesis、AWS Fargate 和 Amazon Simple Storage Service (S3) 等。如需 AWS 服務整合的完整清單,請參閱 EventBridge 文件

問:哪些 AWS 服務已整合成為 Amazon EventBridge 的事件目標?

有超過 15 項 AWS 服務可當成 EventBridge 的事件目標,這些服務包括 AWS Lambda、Amazon Simple Queue Service (SQS)、Amazon SNS、Amazon Kinesis Streams 和 Amazon Kinesis Data Firehose 等。如需 AWS 服務整合的完整清單,請參閱 EventBridge 文件

問:什麼是 EventBridge 封存和重播事件?

事件重播是 Amazon EventBridge 的一項新功能,允許客戶將過去的事件重新處理回事件匯流排或特定的 EventBridge 規則。此功能讓開發人員能夠輕鬆對其應用程式偵錯,透過將歷史事件與目標聯繫在一起來進行擴展,並從錯誤中復原。事件重播讓開發人員可以放心無虞,他們將始終可以存取發佈至 EventBridge 的任何事件。

問:什麼是 EventBridge API 目的地?

API 目的地可讓開發人員將事件傳送回任何內部部署或 SaaS 應用程式,並能控制輸送量和身分驗證。客戶可以使用輸入轉換設定規則,這會將事件的格式映射至接收服務的格式,EventBridge 將負責安全性和交付。觸發規則後,Amazon EventBridge 將根據指定的條件轉換事件,並使用設定規則時提供的身份驗證資訊將其傳送至設定的 Web 服務。安全是內建的,因此開發人員不再需要為他們要使用的服務編寫身分驗證元件。

問:什麼是 API 目的地的「連線」? 如何設定 API 目的地?

每個 API 目的地均使用一個「連線」,其定義用於連線至 HTTP 端點的授權方法和憑證。當您設定授權設定並建立連線時,它會在 AWS Secrets Manager 中建立一個機密以安全地存放授權資訊。此外,您還可以根據您的應用程式,新增其他參數以將其包含在連線中。

若要設定 API 目的地,您將需要提供 API 目的地端點,即事件的 HTTP 叫用端點目標。您將需要建立一個「連線」以對此端點進行授權。您還可以選擇定義叫用速率限制,即每秒傳送至 API 目的地端點的叫用次數上限。進一步了解連線和 API 目的地

限制與效能

問:服務限制有哪些?

請參閱這裡的「服務配額」頁面。

問:傳送和接收事件之間,可預期的延遲時間為何?

基本上延遲時間約 0.5 秒。請注意,延遲時間視情況而不同。

問:Amazon EventBridge 是否支援資源標記?

是,您可以標記規則。但不能標記事件匯流排或事件來源。

問:Amazon EventBridge 可預期的輸送量為何?

這裡的「服務配額」頁面提供事件匯流排的輸送量限制說明。 如果您需要更高的輸送量,請前往 AWS Support Center 並選擇 Create Case,然後選擇 Service Limit Increase,來請求放寬服務限制。

問:EventBridge 是否有服務水準協議?

是。AWS 將採取商業上合理的努力,讓 EventBridge 在每個 AWS 區域的每個月正常執行時間百分比,在任何月結算週期內至少保持 99.99%。如需詳細資訊,請參閱完整的 EventBridge 服務水準協議

結構描述登錄檔

問︰什麼是結構描述?

結構描述是指事件的結構,通常包含事件中所包括的每一部分資料的標題和格式等資訊。例如,結構描述可能包括姓名和電話號碼等欄位,以及姓名為文字字串、電話號碼為整數這一事實。結構描述也可以包括模式的相關資訊,例如電話號碼必須為 10 位數的要求。事件的結構描述非常重要,因為它顯示了事件中包含哪些資訊,並允許您基於該資料編寫程式碼。

問︰什麼是結構描述登錄檔?

結構描述登錄檔用於存放結構描述的集合,這樣您組織內的任何開發人員都可以輕鬆存取應用程式所產生的結構描述,而無需查找整個文件或者向結構描述的作者索取此資訊。您可以手動向登錄檔新增結構描述,或者啟用 EventBridge 結構描述探索功能以自動執行此過程。

問:什麼是結構描述探索功能?

結構描述探索可自動執行查找結構描述並將其新增到登錄檔的過程。為 EventBridge 事件匯流排啟用結構描述登錄檔後,傳送到事件匯流排的每個事件的結構描述都會自動新增到登錄檔。如果事件的登錄檔發生變更,則結構描述探索會在登錄檔中建立結構描述的新版本。結構描述一旦新增到登錄檔,您就可以在 EventBridge 主控台或者直接在您的 IDE 中為該結構描述產生程式碼綁定,這讓您可以將事件表示為您程式碼中的強類型物件,並利用驗證和自動完成等 IDE 功能。

問:我可以從在其他帳戶中探索到的事件探索結構描述嗎?

僅對源自與預設、自訂和合作夥伴事件匯流排上的探索者相同的帳戶的事件啟用結構描述探索。

問:結構描述登錄檔的費用是多少?

結構描述登錄檔可免費使用;但是在啟用結構描述探索之後,會基於擷取事件數進行收費。結構描述探索具有每月 5 百萬個擷取事件的免費方案,該方案應該可以涵蓋大部分的開發使用量。針對免費方案之外的額外使用量,每 1 百萬個擷取事件收取 0.10 USD 的費用。有關定價的更多資訊,請參閱 EventBridge 定價頁面

問:結構描述登錄檔如何減少我需要編寫的程式碼數量?

首先,您可以使用結構描述探索自動識別傳送到您的 EventBridge 事件匯流排的任何事件的結構描述並將其存放在登錄檔中,使您無需手動管理您的事件結構描述。其次,當您編寫在您的匯流排上處理事件的應用程式時,您可以為此結構描述產生和下載程式碼綁定,這樣您可以直接在您的程式碼中使用強類型物件。這可以節省用於您的事件處理常式的還原序列化、驗證及猜測的開銷。

問:為何我應該使用結構描述登錄檔?

透過結構描述登錄檔,EventBridge 為您提供了一種更快開發事件驅動的應用程序的方式,從而讓您可以專注於您的應用程式程式碼。以前,您需要查找可用事件及其結構,並編寫程式碼以將事件解釋和轉換為您的程式碼可以理解的格式。現在,有了結構描述登錄檔,您可以從任何受支援的事件來源 (包括 AWS 服務、第三方及自訂應用程式) 自動查找事件,並偵測其結構描述。

問:結構描述登錄檔支援哪些 IDE?

可透過 AWS Toolkit for Jetbrains (Intellij、PyCharm、Webstorm、Rider) 和 VS Code 以及在 EventBridge 主控台和 API 中使用結構描述登錄檔。進一步了解在您的 IDE 中使用 EventBridge 結構描述登錄檔

問:我可以將結構描述與 Serverless Application Model (AWS SAM) 的結構描述搭配使用嗎?

是的,AWS SAM CLI 的最新版本包括一種交互模式,該模式讓您可以為作為事件類型的任何結構描述在 EventBridge 上建立新的無伺服器應用程式。只需選擇「EventBridge Starter App」模板以及事件的結構描述,AWS SAM 將使用 EventBridge 調用的 Lambda 函數和該事件的處理程式碼自動產生應用程式。這意味著您可以將事件觸發器看作您程式碼中的正常物件,並在您的 IDE 中使用驗證和自動完成等功能。

AWS Toolkit for Jetbrains (Intellij、PyCharm、Webstorm、Rider) 外掛程式和 AWS Toolkit for Visual Studio Code 也提供直接從這些 IDE 使用此範本產生無伺服器應用程式的功能,其中結構描述用作觸發器。

問:我可以使用何種語言從我的結構描述產生程式碼?

可使用 Java (8+)、Python (3.6+) 和 Typescript (3.0+) 產生程式碼。

問:在哪些 AWS 區域提供結構描述登錄檔?

以下區域均已提供 EventBridge 結構描述登錄檔:美國東部 (俄亥俄和維吉尼亞北部)、美國西部 (奧勒岡、加利佛尼亞北部)、加拿大 (中部)、歐洲 (斯德哥爾摩、巴黎、愛爾蘭、法蘭克福、倫敦)、亞太區域 (孟買、東京、首爾、新加坡、香港、雪梨) 以及南美洲 (聖保羅)。

全域端點

問:什麼是全域端點?

全域端點是 Amazon EventBridge 的一項新功能,可讓您更輕鬆地使用 AWS 建置高度可用的事件驅動型應用程式。您可以跨主要和次要區域複寫您的事件,以啟用容錯移轉並最大限度地減少資料遺失,而且能夠在任何服務中斷的情況下自動容錯移轉至備份區域。這簡化了多區域架構的採用,並允許您將彈性整合至事件驅動型應用程式中。

問:為何應使用全域端點?

全域端點透過最大限度地減少服務中斷期間面臨風險的資料量,協助您為最終客戶提供更出色的體驗。您可以自動將事件擷取容錯移轉至次要區域,且無需手動干預,從而使您的事件驅動型應用程式更加穩健和有彈性。您可以使用 CloudWatch 警示 (通過 Route53 運作狀態檢查) 靈活設定容錯移轉條件,以確定何時進行容錯移轉以及何時將事件路由回主要區域。

問:全域端點如何改善我的應用程式可用性?

將事件發佈到全域端點後,這些事件將路由至您的主要區域中的事件匯流排。如果在主要區域中偵測到錯誤,您的運作狀態檢查將被標記為運作狀態不佳,並且傳入事件將被路由至次要區域。使用您指定的 CloudWatch 警示 (透過 Route53 運作狀態檢查) 可以輕鬆偵測到錯誤。一旦問題得到緩解,我們會將新事件路由回主要區域並繼續處理這些事件。

問:什麼類型的應用程式非常適合全域端點?

全域端點非常適合不需要冪等性,或者可以跨區域處理冪等性的應用程式。它們也非常適合用於能夠容忍多達 420 秒的事件未被複寫,並因此停留在主要區域中直至服務或區域復原 (稱為復原點目標) 的應用程式。

問:我應該使用哪些指標來對全域端點進行容錯移轉?

我們新增了一項新指標,用於報告 Amazon EventBridge 的端對端延遲,這可讓您輕鬆確定 EventBridge 中是否存在需要您將事件擷取容錯移轉至次要區域的錯誤。我們提供了預先填充的 CloudFormation 堆疊 (如果您願意,可以自訂) 來建立 CloudWatch 警示和 Route53 運作狀態檢查,以便您可以輕鬆地在主控台中開始使用。如需有關如何設定警示和運作狀態檢查的更多詳細資訊,請查閱我們的發佈部落格和文件。

問:我是否應使用訂閱者的指標來對全域端點進行容錯移轉?

我們建議不要在您的運作狀態檢查中包含訂閱者指標,因為如果單一訂閱者遇到問題,這可能會導致您的發佈者容錯移轉至備份區域,儘管所有其他訂閱者在主要區域中都處於運作良好狀態。如果其中一個訂閱者未能處理主要區域中的事件,您應開啟複寫以確保次要區域中的訂閱者能夠成功處理事件。

問:預期的復原時間點目標 (RTO) 和復原點目標 (RPO) 是什麼?

復原時間點目標 (RTO) 是備份區域或目標在發生故障後開始接收新事件的時間。復原點目標 (RPO) 是對故障期間未處理的資料的量測。對於全域端點,如果您遵循我們關於警示組態的說明性指引,則 RTO 和 RPO 將為 360 秒 (最多 420 秒)。對於 RTO,時間包括觸發 CloudWatch 警示和更新 Route53 運作狀態檢查的時段。對於 RPO,時間包括未複寫至次要區域並停留在主要區域中直至服務或區域復原的事件。

問:是否應開啟複寫?

是。您應開啟複寫以最大程度地減少服務中斷期間面臨的資料風險。在兩個區域中設定自訂匯流排並建立全域端點後,您可以更新應用程式以將事件發佈到全域端點。執行此操作後,一旦問題得到緩解,您的傳入事件將被複寫回主要區域。您可以在次要區域封存您的事件,以確保事件在中斷期間不會遺失。為了從中斷中快速復原,您可以在次要區域複寫您的架構以繼續處理您的事件。您還需要開啟複寫,以確保在問題得到緩解後自動復原。

問:在兩個區域管理配額的最佳實務是什麼?

您應確保在主要區域和次要區域中設定了相同的配額。作為最佳實務,您應在次要區域開啟複寫並處理您的事件,因為這不僅可確保您擁有正確的配額,還可以確保您在次要區域中的應用程式設定正確。

問:是否有簡單的方法可以在我的次要區域複寫我的架構?

您可以使用 AWS CloudFormation StackSets,從而輕鬆地跨 AWS 區域複寫您的架構。例如,請參閱我們的文件。

問:是否可以針對次要架構使用任何帳戶、任何區域和任何匯流排?

在發佈的首次反覆運作中,中國或 GovCloud 區域不支援選擇加入。如需發佈時支援的區域清單,請參閱下面的 Q#16。我們還支援跨區域的同一帳戶和同名匯流排之間的容錯移轉和復原。

問:全域端點是否適用於 CloudTrail、S3 和其他 AWS 服務的 AWS 事件?

全域端點僅可用於自訂事件。我們將在未來增加對 AWS 服務的事件、S3 的選擇加入事件 (Simple Storage Service (Amazon S3) 事件通知) 和第三方事件的支援。

問:是否支援基於延遲的路由?

否,我們在發佈的首次反覆運作中不支援基於延遲的路由。
全域端點的成本是多少?

全域端點無需額外費用。目前,全域端點僅可用於自訂事件,發佈到全域端點的自訂事件按自訂事件定價計費。如需了解定價,請瀏覽 EventBridge 定價頁面

問:是否需要為複寫付費?

是,每百萬個複寫事件將向您收取 1 USD 的費用,EventBridge 對跨區域事件收取費用。

問:全域端點可在哪些區域使用?

全域端點在以下區域開放使用:美國東部 (俄亥俄州和維吉尼亞北部)、美國西部 (奧勒岡、加利佛尼亞北部)、加拿大 (中部)、歐洲 (斯德哥爾摩、巴黎、愛爾蘭、法蘭克福、倫敦)、亞太區域 (孟買、東京、首爾、新加坡、大阪、雪梨) 以及南美洲 (聖保羅) 區域。

費用和計費方式

問:EventBridge 的費用為何?

請參閱這裡的定價。

 

問:合作夥伴將事件傳送到沒有附加事件匯流排的事件來源時,我是否需要支付費用?

否。

架構與設計

問:我是否可以設定目標,將事件傳送到另一個帳戶?

是。這稱為跨帳戶事件,您可以設定目標做為預設事件匯流排或另一個帳戶中的任何其他事件匯流排。

問:AWS CloudFormation 可否與 Amazon EventBridge 一起使用?

是。提供 Amazon EventBridge 的所有區域都提供 CloudFormation 支援。若要進一步了解如何使用 CloudFormation 以佈建和管理 Amazon EventBridge 資源,請瀏覽我們的文件

問:Amazon EventBridge 和 Amazon SNS 的使用時機分別為何?

Amazon EventBridge 和 Amazon SNS 都可以用來開發事件導向應用程式,如何選擇將取決於您的具體需求。如果您要建立應用程式來回應 SaaS 應用程式和/或 AWS 服務傳出的事件,建議您使用 Amazon EventBridge。Amazon EventBridge 是唯一直接與第三方 SaaS 合作夥伴整合的事件型服務。Amazon EventBridge 也可以自動從超過 90 項 AWS 服務擷取事件,開發人員無須在帳戶中建立任何資源。再者,Amazon EventBridge 將定義的 JSON 結構用於事件,可讓您建立規則並套用於整個事件主體,以選取要轉送到目標的事件。Amazon EventBridge 目前支援使用超過 15 項 AWS 服務做為目標,這些服務包括 AWS Lambda、Amazon SQS、Amazon SNS,以及 Amazon Kinesis Streams 和 Kinesis Data Firehose 等。啟動時,Amazon EventBridge 設有有限的輸送量 (請參閱服務配額),您可提出增加輸送量的請求,通常延遲時間約為 0.5 秒。

如果您要建置應用程式來回應其他應用程式或微型服務發佈的高輸送量或低延遲訊息 (Amazon SNS 提供近乎無限制的輸送量),或是需要極高散發 (數千個或數百萬個端點) 的應用程式,則建議您使用 Amazon SNS。訊息為非結構化訊息,並且可使用任何格式。Amazon SNS 支援將訊息轉送到六種不同類型的目標,其中包括 AWS Lambda、Amazon SQS、HTTP/S 端點、SMS、Mobile Push 和電子郵件。Amazon SNS 的典型延遲時間在 30 毫秒以下。有多種 AWS 服務可以藉由設定服務傳送 SNS 訊息 (有超過 30 項的服務,包括 Amazon EC2、Amazon S3 和 Amazon RDS 等)。

整合

問:為什麼要將 SaaS 應用程式與 Amazon EventBridge 整合?

Amazon EventBridge 讓 SaaS 廠商輕鬆將自有的服務整合到客戶在 AWS 上的事件導向架構。Amazon EventBridge 可讓數幾百萬名的 AWS 開發人員直接存取您的產品,進而開啟新的使用案例。這項服務提供可充分稽核的安全可擴展路徑來傳送事件,SaaS 廠商完全不需要管理任何事件基礎設施。

問:我的 SaaS 公司是不錯的事件來源。如何使公司進入呢?

有意成為 Amazon EventBridge 合作夥伴的 SaaS 廠商,應遵循 Amazon EventBridge 整合頁面上的自助式指示,開始發佈事件到 Amazon EventBridge。

問:SaaS 供應商需要執行哪些工作來整合 Amazon EventBridge?

如果 SaaS 供應商已支援 Webhook 或其他以推送為基礎的整合模式,整合 Amazon EventBridge 所預期的開發執行時間應少於 5 天。

問:支援哪些 SaaS 整合?

如需支援的整合完整清單,請參閱這裡

Amazon EventBridge 整合
進一步了解 Amazon EventBridge 整合

瀏覽 Amazon EventBridge 整合頁面。

進一步了解 
開始在主控台進行建置
開始在主控台進行建置

開始在 AWS 管理主控台使用 Amazon EventBridge 進行建置。

登入 
閱讀文件
若要進一步了解,請參閱文件

如要更深入了解 EventBridge,請參閱開發人員指南。

進一步了解