Le développement d'applications à partir de composants individuels qui accomplissent chacun une fonction distincte est une bonne pratique qui améliore l'évolutivité et la fiabilité. Grâce aux files d'attente de messages, vous pouvez envoyer, stocker et recevoir des messages entre les composants d'application, et ce, quel que soit le volume, sans perdre de messages ni avoir besoin que d'autres services soient toujours disponibles.

Les files d'attente de messages proposent plusieurs options qui vous permettent de préciser la façon dont les messages sont diffusés, hiérarchisés et sécurisés. Ces options sont décrites ci-après. Les files d'attente peuvent également être combinées à la messagerie pub/sub dans un modèle de conception de déploiement.

Qu'est-ce qu'une file d'attente de messages ?

Démarrez avec Amazon Simple Queue Service (SQS) en réalisant trois commandes simples.

Essayez Amazon SQS gratuitement

Le niveau gratuit d'AWS comprend 1 million de demandes avec Amazon Simple Queue Service (SQS).

Voir les détails relatifs au niveau gratuit d'AWS »


La plupart des files d'attente de messages proposent des options push et pull pour la récupération des messages. L'option pull signifie l'interrogation continuelle de la file d'attente pour de nouveaux messages. L'option push signifie qu'un consommateur est averti lorsqu'un message est disponible (c'est la messagerie pub/sub). Vous pouvez également utiliser l'attente active de longue durée pour que les extractions attendent un certain temps l'arrivée de nouveaux messages avant de s'exécuter.

De nombreuses files d'attente de messages permettent de définir un délai de diffusion spécifique pour un message. Si vous devez définir le même délai pour tous les messages, vous pouvez configurer une file d'attente à retardement.

Les files d'attente de messages peuvent stocker plusieurs copies de messages pour assurer la redondance et la haute disponibilité, et renvoyer les messages en cas de défaillances ou d'erreurs de communication afin de s'assurer qu'ils sont diffusés au moins une fois.

Lorsque des doublons ne peuvent pas être tolérées, des files d'attente de messages FIFO (premier entré, premier sorti) s'assurent que chaque message n'est diffusé qu'une seule fois en filtrant automatiquement les doublons.

Dans ces files d'attente, l'entrée la plus ancienne (ou la première entrée), parfois appelée la « tête » de la file d'attente, est traitée en premier. Pour en savoir plus sur les files d'attente FIFO Amazon SQS, consultez le guide du développeur.

Vous pouvez également consulter les articles de blog suivants : Using Python and Amazon SQS FIFO Queues to Preserve Message Sequencing, How the Amazon SQS FIFO API Workset FIFO Queues with Exactly-Once Processing & Deduplication.

Une file d'attente de lettres mortes est une file d'attente à laquelle d'autres files d'attente peuvent envoyer les messages qui ne peuvent être traités avec succès. Cela permet de mettre facilement de côté ces messages en vue d'une inspection plus poussée sans bloquer le traitement de la file d'attente et sans consacrer de cycles du CPU à un message qui pourrait ne jamais être traité avec succès.

Pour en savoir plus sur les files d'attente de lettres mortes, consultez notre article de blog Using Amazon SQS Dead-Letter Queues to Control Message Failure. Pour en savoir plus sur l'utilisation des files d'attente de lettres mortes dans Amazon SQS, consultez notre guide du développeur.

En général, vous pouvez attribuer une priorité à un message pour déterminer à quel emplacement de la file d'attente il est ajouté, afin de vous assurer que les messages prioritaires sont placés en tête de la file et traités en premier.

La plupart des files d'attente de messages permettent un classement optimal, ce qui garantit que les messages sont généralement diffusés dans le même ordre que celui dans lequel ils sont envoyés, et qu'un message est diffusé au moins une fois.

Les messages de type « poison pill » sont des messages spéciaux qui peuvent être reçus, mais pas traités. Ce mécanisme est utilisé pour signaler à un consommateur de terminer son travail afin qu'il n'ait plus à attendre de nouvelles entrées, et est similaire à la clôture d'un socket dans un modèle client/serveur.

Les files d'attente de messages authentifient les applications qui tentent d'accéder à la file d'attente et vous permettent d'utiliser un chiffrement pour crypter des messages sur le réseau, ainsi que dans la file d'attente elle-même. Pour en savoir plus sur la sécurité des files d'attente sur AWS, consultez notre article de blog Server-Side Encryption for Amazon Simple Queue Service (SQS). Vous pouvez également en savoir plus sur les fonctionnalités de sécurité d'Amazon SQS en consultant notre guide du développeur.

Démarrez gratuitement avec seulement trois commandes simples.

Démarrage gratuit
blank