翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
カスタムイベントバスでのイベントの順序付けと重複排除
注文はサブスクライバーのプロパティです。重複排除は、公開時に発生します。この 2 つはさまざまな場所に設定され、さまざまな問題を解決します。
順序付け
サブスクライバーの Typeは UNORDEREDまたは ですFIFO。順序付けられていないサブスクライバーは、最高のスループットのためにイベントを並行して配信します。FIFO サブスクライバーは、イベントグループ内で発行された順序でイベントを配信します。パブリッシュ時に、パブリッシュ API の各エントリSystemMetadata.EventGroupIdに を使用して グループを割り当てます。
イベントグループは、それを公開したアカウントに属します。同じ で共有バスに発行する 2 つのアカウントは、2 つの別々のグループEventGroupIdを作成します。それらのイベントは互いに相対的に順序付けられず、グループのスループットは共有されません。グループの制限については、「」を参照してくださいカスタムイベントバスのクォータ。
FIFO サブスクライバー内では、配信できないイベントは、他のグループが続行する間、独自のグループ内の後のイベントを保持します。顧客識別子や注文識別子など、グループ識別子を境界で保持し、境界のない入力から派生させないでください。Amazon SQS FIFO キューなどの FIFO ターゲットは、グループ識別子に独自の長さと文字制限を適用します。
FIFO サブスクライバーは InvocationType EVENT Lambda ターゲットを受け入れますが、注文は Lambda の非同期キューへのハンドオフまで保持されます。順序付けられた処理REQUEST_RESPONSEに使用します。
公開時の重複排除
リクエストDeduplicationType=CONTENT_BASEDで を設定するか、各エントリSystemMetadata.DeduplicationIdで を設定して重複排除します。
-
リクエスト
--deduplication-configuration DeduplicationType=CONTENT_BASEDで を設定します。EventBridge は各エントリのコンテンツをハッシュし、ハッシュがすでに受け入れられているエントリを抑制します。 -
プロデューサーのべき等性キーなど、既存のキーに
SystemMetadata.DeduplicationId各エントリを省略DeduplicationConfigurationして設定します。
EventBridge は、繰り返したエントリから 5 分 (300 秒) 以内に到着する重複を抑制します。チェックの範囲は、アカウントに限定され、エントリに がある場合、イベントグループに限定されますEventGroupId。別のアカウントの同じキーを持つエントリ、または別のグループ内のエントリは、別のイベントです。のないエントリEventGroupIdは、そのバス上のアカウントのグループ化されていないすべてのエントリにわたって、引き続き重複排除されます。
これにより、正確に 1 回だけ取り込みが行われます。ウィンドウ内の重複パブリッシュはバスで抑制され、FIFO サブスクライバーは、受け入れられた各イベントをグループ内で 1 回、順番にターゲットに渡します。
いずれの場合も、抑制された重複は を返しますSuccessCode: DEDUPLICATED。成功として扱います。すべての成功を新しいイベントとしてカウントするコードは、配信を上書きします。EventBridge はコンテンツベースの重複排除を別のオペレーションとして請求するため、プロデューサーにキーがすでにあるDeduplicationId場合は を優先します。料金については、「Amazon EventBridge の料金