このトピックでは、イベントストリームでサポートされている再試行ポリシーとデッドレターキューについて説明します。
再試行ポリシー
再試行ポリシーは、送信に失敗したイベントを再試行するために使用される方法を指定します。EventBridge のイベントストリームは、バックオフ再試行と指数関数的減衰再試行ポリシーをサポートしています。
バックオフ再試行: 失敗したイベントは最大 3 回まで再試行できます。連続する 2 つの再試行の間隔は、10 ~ 20 秒のランダムな値です。これはデフォルトの再試行ポリシーです。
指数関数的減衰再試行: 失敗したイベントは最大 176 回まで再試行できます。連続する 2 つの再試行の間隔は、最大 512 秒まで指数関数的に増加します。再試行に使用できる合計時間は 1 日です。具体的な間隔は、1 秒、2 秒、4 秒、8 秒、16 秒、32 秒、64 秒、128 秒、256 秒、512 秒です。512 秒の値は 167 回の再試行に使用されます。
フォールトトレランスポリシー
フォールトトレランスポリシーは、エラーの処理方法を指定します。EventBridge のイベントストリームは、次のフォールトトレランスポリシーをサポートしています。
フォールトトレランスを許可: フォールトトレランスを許可します。エラーが発生した場合、イベント処理はブロックされません。指定された最大再試行回数に達した後、イベントの送信に失敗した場合、イベントはデッドレターキューに配信されるか、破棄されます。
フォールトトレランスを禁止: フォールトトレランスを許可しません。イベントでエラーが発生し、指定された最大再試行回数に達した後、イベントの送信に失敗した場合、イベント処理はブロックされます。この場合、タスクのステータスは自動的に [準備完了] に変更されます。
無効なリソース構成などのエラーが原因で再試行を実行できない場合、タスクのステータスは自動的に [開始失敗] に変更されます。
デッドレターキュー
デッドレターキューはタスクで有効になります。再試行ポリシーで指定された最大再試行回数に達した後、イベントの処理または送信に失敗した場合、未処理のイベントデータはデッドレターキューに送信されます。デフォルトでは、デッドレターキュー機能は無効になっています。
ApsaraMQ for RocketMQ のキュー、Simple Message Queue (formerly MNS)、ApsaraMQ for Kafka、および EventBridge のイベントバスをデッドレターキューとして使用できます。