翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
FIFO トピックの Amazon SNS メッセージグループ化
同じグループに属するメッセージは、グループに対する厳密な順序で 1 つずつ処理されます。
Amazon SNSFIFOトピックにメッセージを公開するときは、メッセージグループ ID を設定します。グループ ID は、メッセージが特定のメッセージグループに属することを指定する必須トークンです。SNS FIFO トピックは、サブスクライブされた Amazon SQSFIFOキューにグループ ID を渡します。SNS FIFO トピックまたはSQSFIFOキューIDs内のグループ数に制限はありません。メッセージグループ ID は Amazon SQS標準キューに渡されません。
メッセージグループとサブスクリプションの間にアフィニティはありません。したがって、任意のメッセージグループに発行されたメッセージは、サブスクリプションに添付されたフィルターポリシーに従って、すべてのサブスクライブ済みキューに配信されます。詳細については、「FIFO トピックの Amazon SNS メッセージ配信」および「FIFO トピックの Amazon SNS メッセージフィルタリング」を参照してください。
自動車部品価格管理のユースケース例では、プラットフォームで販売されている製品ごとに専用のメッセージグループがあります。同じ Amazon SNSFIFOトピックは、すべての料金更新の処理に使用されます。価格更新の順序は、単一の自動車部品製品のコンテキスト内で保持されますが、ない複数の製品にまたがっていません。この 仕組み を以下に示します。メッセージグループ ID が product-214 の製品の場合、メッセージ m4 はメッセージ m1 の前に処理されることに注意してください。このシーケンスは、Amazon から Amazon SNS FIFO SQS を使用するワークフロー全体で保持されますFIFO。同様に、メッセージグループ ID が product-799 である製品の場合、ワークフローが Amazon SNSFIFOと Amazon SQS を使用している限り、メッセージ m3 はメッセージ m2 の前に処理されますFIFO。ただし、Amazon SQS標準キューを使用する場合、メッセージ順序は保証されなくなり、メッセージグループは存在しません。product-214 および product-799 メッセージグループは互いに独立しているため、メッセージの順序付けには関係がありません。
パフォーマンスを向上させるIDsためにメッセージグループごとにデータを分散する
配信スループットを最適化するために、Amazon SNSFIFOトピックはさまざまなメッセージグループからメッセージを並行して配信しますが、メッセージ順序は各メッセージグループ内で厳密に維持されます。個々のメッセージグループごとに、1 秒あたり最大 300 件のメッセージを配信できます。したがって、1 つのトピックで高いスループットを実現するには、多数の個別のメッセージグループ を使用しますIDs。Amazon SNSFIFOトピックは、さまざまなメッセージグループを使用することで、多数の並列パーティションにメッセージを自動的に配信します。
注記
Amazon SNSFIFOトピックは、グループの数に関係なくIDs、メッセージグループ 間でメッセージを均一に分散するように最適化されています。パフォーマンスIDsを最適化するために、多数の個別のメッセージグループを使用する AWS ことをお勧めします。
高スループットで Amazon SNSFIFOトピックにパブリッシュし、1 つ以上の Amazon SQSFIFOキューをサブスクライブする場合は、キューで高スループットを有効にすることをお勧めします。詳細については、「Amazon Simple Queue Service デベロッパーガイド」のFIFO「キューのハイスループット」を参照してください。