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