Sélectionner vos préférences de cookies

Nous utilisons des cookies essentiels et des outils similaires qui sont nécessaires au fonctionnement de notre site et à la fourniture de nos services. Nous utilisons des cookies de performance pour collecter des statistiques anonymes afin de comprendre comment les clients utilisent notre site et d’apporter des améliorations. Les cookies essentiels ne peuvent pas être désactivés, mais vous pouvez cliquer sur « Personnaliser » ou « Refuser » pour refuser les cookies de performance.

Si vous êtes d’accord, AWS et les tiers approuvés utiliseront également des cookies pour fournir des fonctionnalités utiles au site, mémoriser vos préférences et afficher du contenu pertinent, y compris des publicités pertinentes. Pour accepter ou refuser tous les cookies non essentiels, cliquez sur « Accepter » ou « Refuser ». Pour effectuer des choix plus détaillés, cliquez sur « Personnaliser ».

FIFOlogique de livraison en file d'attente dans Amazon SQS

Mode de mise au point
FIFOlogique de livraison en file d'attente dans Amazon SQS - Amazon Simple Queue Service

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Les concepts suivants clarifient la manière dont les SQS FIFO files d'attente Amazon gèrent l'envoi et la réception de messages, en particulier lorsqu'il s'agit de l'ordre des messages et des groupes IDs de messages.

Envoi de messages

Les SQS FIFO files d'attente Amazon préservent l'ordre des messages grâce à une déduplication IDs et à un groupe de messages uniques. IDs Cette rubrique met en lumière l'importance du groupe de messages IDs pour maintenir un ordre strict au sein des groupes et met en évidence les meilleures pratiques pour garantir une diffusion fiable et ordonnée des messages entre plusieurs producteurs.

  1. Conservation des commandes

    • Lorsque plusieurs messages sont envoyés successivement à une FIFO file d'attente avec déduplication unique des messagesIDs, Amazon les SQS stocke et accuse réception de leur transmission. Ces messages sont ensuite reçus et traités dans l'ordre exact dans lequel ils ont été transmis.

  2. ID de groupe de messages

    • Dans les FIFO files d'attente, les messages sont classés en fonction de leur ID de groupe de messages. Si plusieurs producteurs ou fils de discussion envoient des messages avec le même identifiant de groupe de messages, Amazon SQS s'assure qu'ils sont stockés et traités dans l'ordre dans lequel ils arrivent.

    • Bonne pratique : pour garantir un ordre strict des messages entre plusieurs producteurs, attribuez un identifiant de groupe de messages unique à tous les messages de chaque producteur.

  3. Commande par groupe

    • FIFOla logique de file d'attente s'applique sur la base de l'ID de groupe de messages par message :

      • Chaque ID de groupe de messages représente un groupe de messages distinct et ordonné.

      • Au sein d'un ID de groupe de messages, tous les messages sont envoyés et reçus dans un ordre strict.

      • Les messages appartenant à des groupes de messages différents IDs peuvent arriver ou être traités dans un ordre désordonné les uns par rapport aux autres.

    • Exigence - Vous devez associer un ID de groupe de messages à chaque message. Si un message est envoyé sans identifiant de groupe, l'action échoue.

    • Scénario de groupe unique : si vous souhaitez que tous les messages soient traités dans un ordre strict, utilisez le même identifiant de groupe de messages pour chaque message.

Réception de messages

Les SQS FIFO files d'attente Amazon gèrent la récupération des messages, y compris le traitement par lots, les garanties de FIFO commande et les limites relatives aux demandes de groupes de messages spécifiques. IDs Cette rubrique explique comment Amazon SQS récupère les messages au sein des groupes de messages et entre eux IDs tout en respectant des règles de commande et de visibilité strictes.

  1. Récupération par lots

    • Lors de la réception de messages provenant FIFO d'une file d'attente comportant plusieurs groupes de messagesIDs, Amazon SQS :

      • Tente de renvoyer autant de messages que possible avec le même ID de groupe de messages au cours d'un seul appel.

      • Permet aux autres consommateurs de traiter IDs simultanément les messages provenant de différents groupes de messages.

    • Clarification importante

      • Vous pouvez recevoir plusieurs messages du même identifiant de groupe de messages en un seul lot (jusqu'à 10 messages par appel en utilisant le MaxNumberOfMessages paramètre).

      • Cependant, vous ne pouvez pas recevoir de messages supplémentaires provenant du même identifiant de groupe de messages dans les demandes suivantes tant que :

        • Les messages actuellement reçus sont supprimés, ou

        • Ils redeviennent visibles (par exemple, une fois le délai de visibilité expiré).

  2. FIFOgarantie de commande

    • Les messages extraits par lots conservent leur FIFO ordre au sein du groupe.

    • Si moins de 10 messages sont disponibles pour le même identifiant de groupe de messages, Amazon SQS peut inclure des messages provenant d'autres groupes de messages IDs dans le même lot, mais chaque groupe reste dans l'FIFOordre.

  3. Limites applicables aux consommateurs

    • Vous ne pouvez pas demander explicitement à recevoir des messages provenant d'un identifiant de groupe de messages spécifique.

Multiples nouvelles tentatives

Les producteurs et les consommateurs peuvent réessayer en toute sécurité les actions qui ont échoué dans les SQS FIFO files d'attente Amazon sans perturber l'ordre des messages ni introduire de doublons. Cette rubrique explique comment les délais de déduplication IDs et de visibilité garantissent l'intégrité des messages lors des nouvelles tentatives.

  1. Réessaie le producteur

    • Si une SendMessageaction échoue, le producteur peut réessayer d'envoyer le message plusieurs fois avec le même identifiant de déduplication.

    • Tant que le producteur reçoit au moins un accusé de réception avant l'expiration de l'intervalle de déduplication, il réessaie :

      • N'introduisez pas de messages dupliqués.

      • Ne perturbez pas l'ordre des messages.

  2. Réessaie par le consommateur

    • Si une ReceiveMessageaction échoue, le consommateur peut réessayer autant de fois que nécessaire en utilisant le même identifiant de tentative de demande de réception.

    • Tant que le consommateur reçoit au moins un accusé de réception avant l'expiration du délai de visibilité, il réessaie :

      • Ne perturbez pas l'ordre des messages.

Remarques supplémentaires sur le FIFO comportement

Découvrez comment gérer les délais de visibilité, activer le traitement parallèle avec plusieurs groupes de messages et garantir un traitement séquentiel strict dans les scénarios à groupe IDs unique.

  1. Gestion du délai de visibilité

    • Lorsqu'un message est récupéré mais non supprimé, il reste invisible jusqu'à l'expiration du délai de visibilité.

    • Aucun message supplémentaire provenant du même identifiant de groupe de messages n'est renvoyé tant que le premier message n'est pas supprimé ou ne redevient visible.

  2. Traitement simultané et parallélisme

    • FIFOles files d'attente permettent le traitement parallèle des messages entre différents groupes IDs de messages.

    • Pour optimiser la simultanéité, concevez votre système avec plusieurs groupes de messages IDs pour des flux de travail indépendants.

  3. Scénarios de groupe unique

    • Pour un traitement séquentiel strict de tous les messages FIFO d'une file d'attente, utilisez un identifiant de groupe de messages unique pour tous les messages de la file d'attente.

Exemples pour mieux comprendre

Les scénarios pratiques suivants illustrent le comportement des FIFO files d'attente sur AmazonSQS.

  1. Scénario 1 : ID de groupe unique

    • Un producteur envoie cinq messages avec le même identifiant de groupe de messages (groupe A).

    • Le consommateur reçoit ces messages dans l'FIFOordre. Jusqu'à ce que le consommateur supprime ces messages ou que le délai de visibilité expire, aucun message supplémentaire du groupe A n'est reçu.

  2. Scénario 2 : groupe multiple IDs

    • Un producteur envoie cinq messages au groupe A et 5 au groupe B.

    • Le consommateur 1 traite les messages du groupe A, tandis que le consommateur 2 traite les messages du groupe B. Cela permet un traitement parallèle avec un ordre strict maintenu au sein de chaque groupe.

  3. Scénario 3 : extraction par lots

    • Un producteur envoie sept messages au groupe A et trois au groupe B.

    • Un seul client peut récupérer jusqu'à 10 messages. Si la file d'attente le permet, elle peut renvoyer :

      • Sept messages du groupe A et trois du groupe B (ou moins si moins de messages sont disponibles dans un seul groupe).

ConfidentialitéConditions d'utilisation du sitePréférences de cookies
© 2025, Amazon Web Services, Inc. ou ses affiliés. Tous droits réservés.