Cours
Amazon Simple Queue Service (SQS) est un service de mise en file d'attente de messages entièrement géré proposé par Amazon Web Services (AWS). Il permet de découpler et de faire monter en charge des systèmes distribués, des microservices et des applications serverless.
Ce guide offre une vision claire d’AWS SQS, en couvrant ses fonctionnalités ainsi que la création et la gestion de files d’attente. Il explique également comment envoyer et recevoir des messages, présente les modèles de tarification, les options de supervision et de métriques, compare SQS à SNS et partage des bonnes pratiques pour un usage optimal.
Pour celles et ceux qui débutent sur AWS, notre cours Introduction to AWS est un excellent point de départ. Vous y découvrirez l’univers d’Amazon Web Services et pourquoi il est à la pointe du cloud computing.
Qu’est-ce qu’AWS SQS ?
Avant d’entrer dans le détail, voyons ce qu’est AWS SQS et pourquoi ce service est si précieux dans l’écosystème AWS.

Schéma d’architecture Amazon SQS
AWS SQS est un système de files d’attente distribué qui permet aux applications de services web d’ajouter rapidement et de manière fiable des messages générés par des producteurs afin qu’ils soient consommés par des consommateurs.
Une file d’attente sert de référentiel temporaire pour les messages en attente de traitement. Amazon SQS propose aussi des capacités de relance via la redrive policy, qui autorise plusieurs tentatives et l’utilisation de dead-letter queues (DLQ) pour gérer les messages sujets aux erreurs, en notifiant les développeurs des problèmes et en stockant éventuellement les messages pour un retraitement ultérieur.
Fonctionnalités et bénéfices de SQS
L’usage de SQS offre plusieurs avantages, notamment :

Fonctionnalités et bénéfices clés d’AWS SQS
- Scalabilité : SQS gère n’importe quel volume de trafic sans que vous ayez à provisionner ni à gérer l’infrastructure.
- Durabilité : les messages sont stockés de façon redondante sur plusieurs zones de disponibilité.
- Disponibilité : haute disponibilité pour la production et la consommation des messages.
- Sécurité : chiffrage côté serveur (SSE) pour protéger le contenu des messages.
- Flexibilité : prise en charge de multiples formats de messages et intégration avec divers services AWS.
Cas d’usage pour découpler et faire évoluer des microservices
De nombreux cas d’usage métier bénéficient de SQS ; en voici quelques illustrations :

Cas d’usage d’AWS SQS pour découpler et mettre à l’échelle des microservices
- File de travaux : répartir des tâches entre plusieurs processus workers.
- Tampon pour écritures en base : protéger une base de données d’une charge d’écriture excessive.
- Déport de requêtes : déplacer les opérations lentes hors des parcours de requêtes interactives.
- Traitement par lots : collecter et traiter un groupe de messages en une fois.
Devenez ingénieur en données
Configuration d’AWS SQS
Maintenant que nous savons ce qu’est SQS, voyons comment le configurer. Cette section vous guide à travers les prérequis et l’accès à la console SQS.
Prerequisites
Avant d’utiliser AWS SQS, assurez-vous de disposer :
- D’un compte AWS actif. Vous pouvez le créer depuis la page officielle.
- Des rôles et autorisations IAM nécessaires pour l’accès à SQS.
Pour configurer les permissions IAM :
- Accédez à la console IAM.
- Créez une nouvelle stratégie (policy).

Configuration d’AWS SQS
- Deux options s’offrent à vous pour créer une policy : l’éditeur visuel ou le JSON. Nous utilisons ici l’éditeur visuel, plus intuitif.
- Choisissez « SQS » dans la section « Service » et définissez l’Effect sur « Allow » pour les permissions suivantes :
sqs:CreateQueue,sqs:DeleteQueue,sqs:SendMessage,sqs:ReceiveMessage,sqs:DeleteMessage.

Configuration d’AWS SQS
- Autorisez ces actions sur « All » resources, puis cliquez sur « Next ».
- Donnez un nom à la policy, « SQSHandsOnPolicies » dans notre cas, puis créez-la.

Configuration d’AWS SQS
La policy finale devrait ressembler à ceci en JSON :

Configuration d’AWS SQS
Passons brièvement en revue la définition de cette policy :
“Version”: “2012-10-17”est la version actuelle du langage des policies IAM.- La policy contient un
“Statement”qui définit un ensemble d’autorisations. “Sid”: “VisualEditor0”indique que cette policy a été créée via l’éditeur visuel.“Effect”: “Allow”signifie que ces actions sont autorisées.“Action”: cette liste précise les opérations SQS autorisées ci-dessus.“Resource”: “*”signifie que ces actions sont autorisées sur toutes les ressources SQS du compte.
Cette policy octroie un accès complet pour créer, supprimer, envoyer et recevoir des messages depuis n’importe quelle file d’attente SQS du compte. Elle est assez permissive : en production, préférez la restreindre à des ARNs de files précises pour renforcer la sécurité.
Pour aller plus loin avec la configuration IAM, le tutoriel The Complete Guide to AWS Identity and Access Management (IAM) explique comment sécuriser votre environnement AWS, gérer les accès via des utilisateurs, groupes et rôles, et mettre en place les bonnes pratiques de sécurité.
Pour approfondir vos connaissances de la configuration AWS, consultez How to Setup and Configure AWS: A Comprehensive Tutorial pour découvrir les réglages essentiels, les bonnes pratiques de sécurité et comment exploiter les services AWS pour l’analyse de données et le machine learning.
Accéder à la console Amazon SQS
Une fois les prérequis en place, accédez à la console SQS pour créer et gérer vos files. Procédez comme suit :
- Dans la barre de recherche en haut, saisissez "SQS" et sélectionnez "Simple Queue Service".
- Vous accédez alors au tableau de bord SQS.

Accès à la console Amazon SQS
Créer et gérer des files SQS
Avec l’accès à la console SQS, vous pouvez créer et administrer des files. Cette section couvre la création de files standard et FIFO.
Mais au fait, où intervient notre policy IAM ?
La policy IAM créée dans les prérequis est essentielle pour créer et gérer des files. Voici son rôle :
- Association à un utilisateur ou un rôle : la policy doit être attachée à l’utilisateur IAM ou au rôle que vous utilisez pour accéder à la console SQS ou à l’AWS CLI.
- Contrôle des permissions : lors de la création d’une file (ou de toute action SQS), AWS vérifie cette policy pour valider vos droits.
- Autorisation d’action : la permission
sqs:CreateQueueautorise spécifiquement la création de files. Sans elle, vous obtiendriez une erreur "Access Denied". - Opérations continues : les autres permissions (
sqs:SendMessage,sqs:ReceiveMessage,sqs:DeleteMessage,sqs:DeleteQueue) vous permettent de gérer la file après sa création.
Sur cette base, poursuivons avec la création de nos files, à commencer par une file standard.
Créer une file standard
Les files standard sont le type par défaut dans SQS. Voici comment en créer une :
- Depuis le tableau de bord SQS, cliquez sur « Create queue ».
- Choisissez « Standard » comme type de file.
- Saisissez un nom pour la file, « SQSHandsOn » dans notre exemple.
- Configurez les paramètres : délai de visibilité, période de rétention, taille maximale des messages, délai de livraison. Laissons les valeurs par défaut puis cliquez sur « Create queue ».

Création d’une file standard
La création réussie génère un message de confirmation, comme ci-dessous, accompagné d’informations sur la file.

Création d’une file standard
Créer une file FIFO
Les files FIFO garantissent l’ordre de traitement des messages. Voici les étapes :
- Dans le tableau de bord SQS, cliquez sur « Create queue ».
- Choisissez « FIFO » comme type de file.
- Saisissez un nom pour votre file (doit se terminer par « .fifo »). J’ai nommé la mienne « SQSHandsOn.fifo ».
- Comme ci-dessus, laissez les autres paramètres par défaut et cliquez sur « Create queue ».

Création d’une file FIFO
Comme pour la file standard, la création réussie d’une file FIFO fournit les mêmes informations utiles pour envoyer des messages.

Création d’une file FIFO
Différences entre files standard et FIFO
Pour choisir entre une file standard et une file FIFO, il est important d’en comprendre les spécificités et capacités.
Le tableau suivant propose une comparaison pour vous aider à déterminer le type le plus adapté à votre application :

Différences entre files standard et FIFO
Envoi et réception de messages dans SQS
Maintenant que nos files sont prêtes, passons à l’envoi et la réception de messages, via la console de gestion AWS et la ligne de commande (CLI).
Envoi de messages
Le processus d’envoi est démontré avec les files standard et FIFO.
File standard
Via la console de gestion AWS
- Sélectionnez votre file depuis le tableau de bord SQS.
- Cliquez sur « Send and receive messages ».
- Dans « Message body », saisissez un message, par exemple : « Cette file a été créée en suivant le tutoriel Comprehensive Guide to Amazon Simple Queue Service (SQS). »
- Cliquez sur « Send message ».

Envoi de messages via la console de gestion AWS
Après l’envoi, une fenêtre contextuelle confirme que le message a bien été transmis. En cliquant sur « View details », vous accédez aux détails du message comme ci-dessous.

Envoi de messages via la console de gestion AWS
Enfin, dans la section « Receive messages », on constate qu’un message est disponible.

Envoi de messages via la console de gestion AWS
Via l’AWS CLI SQS
Les étapes principales pour envoyer un message via le CLI suivent le modèle ci-dessous.
aws sqs send-message --queue-url [YOUR URL]--message-body "YOUR MESSAGE"
Pour la file standard, notre URL figure dans la capture correspondante ci-dessus. Pour le CLI, utilisons un message différent :
- https://sqs.us-east-1.amazonaws.com/022499002265/SQSHandsOn
- Message : « Message sent via AWS CLI »
Première étape pour utiliser le CLI : le configurer afin qu’il interagisse avec nos ressources AWS, ce qui nécessite les identifiants suivants :
- Access key ID
- Secret access key
aws configure
Une fois la configuration terminée, exécutez la commande suivante avec les bons arguments :
aws sqs send-message --queue-url https://sqs.us-east-1.amazonaws.com/022499002265/SQSHandsOn --message-body "Message sent via AWS CLI"

Envoi de messages via le CLI
La sortie JSON de la commande correspond aux détails du message envoyé. Nous voyons désormais deux messages dans la file SQSHandsOn.

Envoi de messages via le CLI
File FIFO
L’envoi de messages avec une file FIFO diffère légèrement de l’approche standard.
Pour l’illustrer, imaginons une plateforme e-commerce vendant des appareils électroniques.
Votre système gère différentes opérations : traitement des commandes, mise à jour des stocks, gestion des paiements. Une file SQS FIFO garantit ici l’ordre de traitement et évite les doublons.
- Exemple CLI 1 (commande client) : message émis lors d’une nouvelle commande. Le système de traitement les exécute dans l’ordre de réception.
- Exemple CLI 2 (mise à jour des stocks) : envoyé après le traitement d’une commande afin d’actualiser les niveaux de stock.
- Exemple console (traitement du paiement) : émis quand un paiement doit être traité, en assurant l’ordre et l’unicité du traitement.
Avec une file FIFO, vous vous assurez que :
- Les commandes sont traitées dans l’ordre de passation.
- Les mises à jour de stock respectent l’ordre, évitant la survente.
- Les paiements sont traités une seule fois et dans le bon ordre.
Deux éléments clés à ne pas oublier avec une file FIFO :
- Message group ID : obligatoire pour tous les messages. Il détermine l’ordre de traitement au sein d’un groupe.
- Message deduplication ID : garantit qu’un message n’est traité qu’une seule fois sur une fenêtre de 5 minutes.
Passons à la démonstration en CLI.
Via l’AWS CLI SQS
Exécutez les commandes suivantes pour envoyer les deux premiers messages dans la file FIFO.
- Exemple CLI 1 : envoi d’une commande client :
aws sqs send-message --queue-url https://sqs.us-east-1.amazonaws.com/022499002265/SQSHandsOn.fifo --message-body "Process customer order: #A1001" --message-group-id "CustomerOrders" --message-deduplication-id "Order-A1001-20240817-1"
La sortie de cette première exécution est donnée ci-dessous.

Exemple 1 - Résultat de l’envoi via le CLI avec une file FIFO
- Exemple CLI 2 : envoi d’une mise à jour de stock :
aws sqs send-message --queue-url https://sqs.us-east-1.amazonaws.com/022499002265/SQSHandsOn.fifo --message-body "Update inventory: ProductX -5 units" --message-group-id "InventoryUpdates" --message-deduplication-id "Inventory-ProductX-20240817-1"
La sortie est présentée ci-dessous.

Exemple 2 - Résultat de l’envoi via le CLI avec une file FIFO
Jusqu’ici, deux messages ont été envoyés dans la file FIFO, comme on le voit ci-dessous.

Résultat de l’envoi via le CLI avec une file FIFO - Nombre de messages
Via la console de gestion AWS
Comme pour la file standard, vous pouvez envoyer des messages depuis la console :
- Depuis la page « Queues », choisissez « SQSHandsOn.fifo ».
- Sélectionnez l’onglet « Send and receive message » pour envoyer un message.
- Des champs supplémentaires comme « Message group ID » et « Message deduplication ID » sont requis.

Résultat de l’envoi via la console de gestion avec une file FIFO
Nous pouvons maintenant constater que la file FIFO contient trois messages au total.

Résultat de l’envoi via la console de gestion avec une file FIFO - Nombre total de messages
Réception et suppression de messages
Recevoir et supprimer les messages est tout aussi essentiel que de les envoyer. Voici comment procéder.
File standard
Via la console de gestion AWS
- Sélectionnez votre file depuis le tableau de bord SQS.
- Cliquez sur « Send and receive messages ».
- Cliquez sur « Poll for messages ».
- Les messages apparaissent dans la section « Messages ».

Réception via la console de gestion AWS avec une file standard
Les deux messages de la file standard sont visibles ci-dessus.
Via l’AWS CLI SQS
Voici la commande générique pour recevoir des messages d’une file standard.
aws sqs receive-message --queue-url [YOUR URL]
Pour notre file standard, la commande complète devient :
aws sqs receive-message --queue-url https://sqs.us-east-1.amazonaws.com/022499002265/SQSHandsOn
File FIFO
La récupération via la console suit le même processus que pour la file standard.
Pour recevoir des messages d’une file FIFO avec l’AWS CLI, utilisez la commande aws sqs receive-message. Structure de base :
aws sqs receive-message --queue-url https://sqs.us-east-1.amazonaws.com/022499002265/SQSHandsOn.fifo --attribute-names All --message-attribute-names All --max-number-of-messages 3
-attribute-names All: récupère tous les attributs par défaut des messages.-message-attribute-names All: récupère tous les attributs personnalisés.--max-number-of-messages 3: spécifie le nombre maximal de messages à recevoir.
L’exécution de la commande ci-dessus renvoie les trois messages présents dans la file FIFO.

Réception via le CLI avec une file FIFO
Tarification AWS SQS
Comprendre le modèle de tarification est essentiel pour utiliser SQS au meilleur coût. Cette section en propose une synthèse et des conseils d’optimisation.
De manière générale, la tarification SQS dépend du nombre de requêtes API, du transfert de données et des options activées.
Tarification des requêtes
Les tableaux suivants récapitulent la tarification des requêtes SQS :
|
Files standard (par million de requêtes) |
Files FIFO (par million de requêtes) |
|
|
Premier million de requêtes/mois |
Gratuit |
Gratuit |
|
De 1 million à 100 milliards/mois |
$0,40 |
$0,50 |
|
De 100 milliards à 200 milliards/mois |
$0,30 |
$0,40 |
|
Au-delà de 200 milliards/mois |
0,24 |
$0,35 |
Tarifs issus de la page SQS d’AWS
Tarification du transfert de données
Pour comprendre la tarification du transfert de données, reportez-vous au tableau suivant :
|
Transfert entrant |
Tarif |
|
Tout transfert entrant |
$0,00 par Go |
|
Transfert sortant |
Tarif |
|
Premiers 10 To/mois |
$0,09 par Go |
|
40 To suivants/mois |
$0,085 par Go |
|
100 To suivants/mois |
$0,07 par Go |
|
Au-delà de 150 To/mois |
$0,05 par Go |
Tarifs issus de la page SQS d’AWS
Conseils pour maîtriser les coûts
Voici quelques conseils rapides pour optimiser vos coûts SQS :
- Utilisez le long polling pour réduire les réceptions vides.
- Groupez vos envois et réceptions en lots.
- Supervisez votre consommation via AWS Cost Explorer.
Supervision et métriques AWS SQS
Une supervision efficace est cruciale pour maintenir une implémentation SQS saine. Cette section couvre les métriques importantes et la création d’alarmes.
Métriques SQS essentielles
Voici les métriques à surveiller de près :

Métriques clés d’AWS SQS
ApproximateNumberOfMessagesVisible
Nombre de messages disponibles à la récupération dans la file. Indique le retard de traitement et l’efficacité du débit. Un chiffre élevé peut révéler un goulet d’étranglement côté traitement.
ApproximateAgeOfOldestMessage
Âge du plus ancien message non supprimé. Aide à détecter des lenteurs ou blocages de traitement, notamment pour les files FIFO où cela peut signaler des groupes de messages bloqués.
NumberOfMessagesSent
Nombre de messages ajoutés à la file. Utile pour surveiller le taux d’entrée et déceler des pics inhabituels. Les messages envoyés manuellement dans les files de lettres mortes sont inclus.
NumberOfMessagesReceived
Nombre de messages renvoyés aux consommateurs depuis la file. Permet de suivre le débit en sortie, à comparer avec NumberOfMessagesSent pour évaluer l’efficacité. Comme NumberOfMessagesSent, n’inclut pas les messages transférés automatiquement en DLQ après échec.
Créer des alarmes CloudWatch
Nous illustrons la création d’une alarme CloudWatch pour l’une des quatre métriques ci-dessus. Le processus étant identique, nous nous concentrons sur une seule métrique, et uniquement sur la file standard (SQSHandsOn) pour simplifier.
Les étapes principales pour l’alarme sur ApproximateNumberOfMessagesVisible sont les suivantes.
Les alarmes CloudWatch vous alertent en cas de problème potentiel. Voici comment les configurer depuis la console :
- Recherchez « CloudWatch » et ouvrez le service.
- Dans le menu de gauche, cliquez sur « Alarms ».
- Cliquez sur « Create alarm ».
- Cliquez sur « Select metric ».
- Dans l’onglet « All metrics », trouvez et cliquez sur « SQS ».
- Cliquez sur « Queue Metrics ».
- Sélectionnez votre file et la métrique ApproximateNumberOfMessagesVisible pour la file standard SQSHandsOn.

Création d’alarmes CloudWatch
- Depuis cette page, choisissez « Graph metrics ».
- Choisissez la statistique « Average ».
- Réglez la période à 5 minutes, puis « Select metric ».

Création d’alarmes CloudWatch
- Donnez un nom à la métrique (par exemple « SQS-AvgHighMessageCount-SQSHandsOn ») et définissez le « Threshold Type » sur « Static ».
- Renseignez la condition de déclenchement : « Greater » dans notre cas.
- Fixez le seuil à « 20 » et cliquez sur « Next ».

Création d’alarmes CloudWatch
Cette configuration déclenchera l’alarme lorsque la moyenne du nombre de messages visibles dans la file SQSHandsOn dépasse 20 pour au moins un point de données sur 5 minutes. Le graphique affiche le nombre courant (ligne bleue) par rapport au seuil (ligne rouge à 20).
Ce dispositif aide à détecter une accumulation de messages non traités, signe possible de retards de traitement ou d’un dysfonctionnement des consommateurs.
Les consommateurs désignent l’ensemble des applications ou composants qui récupèrent et traitent les messages de la file.
Si la moyenne dépasse 20, vous recevrez une alerte et pourrez investiguer pour éviter les arriérés.
- L’action « Next » mène à « Configure actions » : nous ne configurons rien ici et laissons la page telle quelle.
- Cliquez sur « Next » et donnez un nom unique à l’alarme, par exemple "SQSHandsOn-HighMessageCount".
- Ajoutez éventuellement une description puis « Next ».
- Vérifiez les paramètres et cliquez sur « Create alarm ».

Création d’alarmes CloudWatch
- Vous devriez voir un message vert de confirmation pour votre alarme, ainsi que son nom dans la colonne « Name ».

Création d’alarmes CloudWatch
- En cliquant sur le nom de l’alarme, vous accédez à son détail :

Création d’alarmes CloudWatch
L’alarme pour notre file SQSHandsOn est actuellement en « Insufficient data », faute d’assez de données pour déterminer un état.
Le graphique n’affiche pas encore de points de données, car la file est récente. L’alarme se déclenche lorsque la moyenne dépasse 20 sur 5 minutes.
Au fur et à mesure de l’activité de la file et du traitement des messages, CloudWatch collectera les données et mettra à jour l’état de l’alarme.
AWS SNS vs SQS
SQS et SNS sont deux services de messagerie, mais leurs objectifs diffèrent. Cette section clarifie leurs différences et cas d’usage respectifs.

Tableau comparatif SNS vs SQS
Bonnes pratiques AWS SQS
Suivre les bonnes pratiques est essentiel pour tirer le meilleur parti de SQS. Voici quelques recommandations :
- Utilisez le long polling pour réduire les coûts et la latence.
- Mettez en place des dead-letter queues pour les messages problématiques.
- Utilisez les opérations par lots lorsque c’est possible.
- Sécurisez vos files avec des policies d’accès adaptées.
- Surveillez la profondeur de file et ajustez votre capacité de traitement en conséquence.
- Chiffrez les données en transit et au repos pour les contenus sensibles.
Conclusion
AWS SQS est un puissant levier pour construire des applications cloud évolutives et résilientes. En découpant vos composants, vous gagnez en flexibilité, en tolérance aux pannes et en scalabilité. Avec sa facilité d’usage, ses fonctionnalités riches et son intégration avec les autres services AWS, SQS est un incontournable des architectures cloud modernes.
Pensez à surveiller votre usage, à optimiser votre implémentation et à suivre les bonnes pratiques pour tirer le meilleur d’AWS SQS. Au fur et à mesure que votre application évolue, SQS s’adapte à vos besoins, et demeure un atout clé dans votre boîte à outils AWS.
Poursuivez votre parcours AWS avec notre cours AWS Cloud Technology and Services. Cette première étape vous aidera à faire progresser votre carrière et, plus tard, à obtenir une certification AWS.
Obtenez une certification pour le poste de Data Engineer de vos rêves
Nos programmes de certification vous aident à vous démarquer et à prouver aux employeurs potentiels que vos compétences sont adaptées à l'emploi.

FAQs
Quelle est la différence entre une file standard et une file FIFO dans SQS ?
Une file standard offre un débit illimité et une livraison des messages au moins une fois, sans garantie d’ordre. Une file FIFO, à l’inverse, garantit que les messages sont traités dans l’ordre exact d’envoi et qu’ils ne sont traités qu’une seule fois.
Comment contrôler l’accès à mes files SQS ?
Vous pouvez contrôler l’accès aux files SQS via des policies IAM et des policies de ressource SQS. Les policies IAM gèrent les permissions des utilisateurs et des rôles, tandis que les policies SQS contrôlent l’accès au niveau de la file, en restreignant des comptes AWS ou des actions spécifiques.
Quels sont les coûts liés à l’utilisation d’AWS SQS ?
Les coûts d’AWS SQS dépendent du nombre de requêtes API et du transfert de données. Le premier million de requêtes mensuelles est gratuit, puis la tarification évolue selon le volume et les options, comme les files FIFO et le long polling.
Comment améliorer les performances de mes files SQS ?
Pour optimiser les performances, utilisez le long polling pour réduire les lectures vides, mettez en place des opérations par lots pour envoyer et recevoir en volume, et surveillez votre file avec CloudWatch afin d’ajuster votre capacité de traitement.
Scientifique de données aux multiples talents qui aime partager ses connaissances et rendre service aux autres, Zoumana est un créateur de contenu sur YouTube et un rédacteur technique de premier plan sur Medium. Il prend plaisir à parler, à coder et à enseigner. Zoumana est titulaire de deux masters. Le premier en informatique avec une spécialisation en apprentissage automatique à Paris, en France, et le second en science des données à l'université Texas Tech aux États-Unis. Son parcours professionnel a débuté en tant que développeur de logiciels au sein du Groupe OPEN en France, avant de rejoindre IBM en tant que consultant en apprentissage automatique, où il a développé des solutions d'IA de bout en bout pour les compagnies d'assurance. Zoumana a rejoint Axionable, la première startup d'IA durable basée à Paris et Montréal. Il y a occupé le poste de Data Scientist et a mis en œuvre des produits d'IA, principalement des cas d'utilisation NLP, pour des clients en France, à Montréal, à Singapour et en Suisse. En outre, 5 % de son temps a été consacré à la recherche et au développement. Il travaille actuellement en tant que scientifique de données senior à l'IFC, le groupe de la Banque mondiale.
