翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
FIFO トピックの Amazon SNS メッセージ重複排除
Amazon SNS FIFO トピックおよび Amazon SQS FIFO キューでは、メッセージの重複排除がサポートされます。これは、以下の条件が満たされている限り、メッセージの配信と処理を 1 回だけ行います。
-
サブスクライブされた SQS FIFO キューがあり、このキューのアクセス許可により、このキューへのメッセージ配信を Amazon SNS サービスプリンシパルに許可します。
-
Amazon SQS FIFO キューコンシューマーはメッセージを処理し、可視性タイムアウトの期限が切れる前に、キューからメッセージを削除します。
-
Amazon SNS サブスクリプショントピックには、メッセージのフィルター処理がありません。メッセージフィルター処理を設定すると、サブスクリプションフィルターポリシーに基づいてメッセージをフィルター処理できるため、Amazon SNS FIFO トピックは最大 1 回の配信をサポートします。
-
メッセージ配信の確認応答を妨げるネットワークの中断はありません。
注記
メッセージ重複排除FifoThroughputScope
は、トピック属性が に設定されている場合、Amazon SNS FIFO トピック全体に適用されますTopic
。トピック属性が に設定されている場合MessageGroup
、メッセージ重複排除FifoThroughputScope
は個々のメッセージグループに適用されます。
メッセージを Amazon SNS FIFO トピックに発行する場合、メッセージには重複排除 ID を含める必要があります。この ID は、Amazon SNS FIFO トピックから、サブスクライブされた Amazon SQS FIFO キューに配信するメッセージに含まれます。
特定の重複排除 ID を持つメッセージが Amazon SNS FIFO トピックに正常に発行されると、5 分間の重複排除間隔内に同じ重複排除 ID で発行されたメッセージは受け入れられますが、配信されません。Amazon SNS FIFO トピックは、メッセージがサブスクライブされたエンドポイントに配信された後でも、トピック属性 によって設定された重複排除スコープでFifoThroughputScope
、メッセージ重複排除 ID を追跡し続けます。
メッセージの発行ごとにメッセージ本文が一意であることが保証されている場合は、Amazon SNS FIFO トピックとサブスクライブされた Amazon SQS FIFO キューに対してコンテンツベースの重複排除を有効にできます。Amazon SNS は、メッセージ本文を使用して、各メッセージの重複除外 ID として使用する一意のハッシュ値を生成するため、各メッセージを送信するときに重複除外 ID を設定する必要はありません。
注記
メッセージ属性はハッシュ計算に含まれません。
Amazon SNS FIFO トピックでコンテンツベースの重複排除が有効になっている場合、ある重複排除 ID を使ってメッセージが発行されると、発行された重複排除 ID によって生成されたコンテンツベースの重複排除 ID が上書きされます。
自動車部品価格管理のユースケース例では、価格更新ごとに汎用的に一意の重複除外 ID を設定する必要があります。これは、メッセージ属性が卸売と小売で異なる場合でも、メッセージ本文が同一になる可能性があるためです。ただし、企業が、メッセージ本文に製品 ID および製品価格と共にビジネスタイプ (卸売または小売) を追加した場合、Amazon SNS FIFO トピックおよびサブスクライブされた Amazon SQS FIFO キューでコンテンツベースの重複を有効にできます。

Amazon SNS FIFO トピックは、メッセージの順序付けと重複排除に加えて、 AWS KMS キーを使用したメッセージサーバー側の暗号化 (SSE) と、 を使用した VPC エンドポイントを介したメッセージプライバシーをサポートしています AWS PrivateLink。詳細については、「FIFO トピックの Amazon SNS メッセージセキュリティ」を参照してください。