

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

# 在 Amazon EventBridge 中定義規則時的最佳實務
<a name="eb-rules-best-practices"></a>

以下是為事件匯流排建立規則時應考量的一些最佳作法。

## 為每個規則設定單一目標
<a name="eb-rules-best-practices-single-target"></a>

雖然您可以為指定規則最多指定五個目標，但是當您為每個規則指定單一目標時，管理規則會比較容易。如果有多個目標需要接收相同的事件集，建議您複製規則以將相同的事件傳遞至不同的目標。這種封裝簡化了規則的維護：如果事件目標的需求隨著時間的推移而發生差異，您可以獨立於其他規則更新每個規則及其事件模式。

## 設定規則許可
<a name="eb-rules-best-practices-permissions"></a>

您可以讓取用事件的應用程式元件或服務控制管理自己的規則。客戶採用的常見架構方法是使用個別 AWS 帳戶隔離這些應用程式元件或服務。若要啟用事件從一個帳戶到另一個帳戶的流程，您必須在一個事件匯流排上建立規則，將事件路由至另一個帳戶中的事件匯流排。您可以讓取用事件的團隊或服務控制管理自己的規則。您可以透過資源策略為其帳號指定適當的權限來執行此操作。這適用於帳戶和區域。

如需詳細資訊，請參閱[Amazon EventBridge 中事件匯流排的許可](eb-event-bus-perms.md)。

如需資源政策的範例，請參閱 GitHub 上的 [Amazon EventBridge 多帳戶設計模式](https://github.com/aws-samples/amazon-eventbridge-resource-policy-samples/tree/main/patterns)。

## 監控規則效能
<a name="eb-rules-best-practices-monitor"></a>

監控您的規則，以確保它們的執行如您所期望：
+ 監視遺失資料點或異常的 `TriggeredRules` 指標，可協助您偵測發布者發生重大變更的差異。如需詳細資訊，請參閱[監控 Amazon EventBridge](eb-monitoring.md)。
+ 針對異常或預期計數上限發出警示，也可協助偵測規則何時符合新事件。當事件發布者，包括 AWS 服務和 SaaS 合作夥伴，在啟用新的使用案例和功能時引入新事件時，可能會發生這種情況。當這些新事件非預期且導致數量高於下游目標的處理速率時，可能會導致事件積壓。

  這種意外事件的處理也可能導致不必要的帳單費用。

  當帳戶超過其每秒 service quota 的彙總目標調用時，也可以觸發規則限流。EventBridge 仍會嘗試傳遞受限流規則相符的事件，並重試最多 24 小時，或如目標自訂重試原則中所述。您可以使用 `ThrottledRules` 量度偵測並警示限流規則
+ 對於低延遲的使用案例，您也可以使用 `IngestionToInvocationStartLatency` 來監控延遲，這會提供事件匯流排健康狀態的指示。任何長時間超過 30 秒的高延遲時間可能表示服務中斷或規則限流。