Utiliser Azure Storage Queues

Développer pour Azure Storage

Shahzad Mian

Content Developer, DataCamp

Introduction aux Storage Queues

  • Les files d'attente de stockage sont un service de mise en file de messages.
  • Les applications gèrent souvent de nombreuses requêtes en même temps.
  • Attendre la fin de chaque traitement peut ralentir le système.
  • Azure Storage Queues permet une communication asynchrone entre composants.
  • La messagerie asynchrone maintient vitesse et évolutivité.

Résolution de problèmes avec une file de stockage

Développer pour Azure Storage

Le défi réel

Problème et solution : afflux de commandes

  • La boutique en ligne de Cipher Coffee reçoit des centaines de commandes d'un coup.
  • Sans files d'attente, chaque commande attendrait la fin des autres.
  • Les files permettent d'accepter instantanément et de traiter plus tard.
  • Le site reste rapide et les clients satisfaits.
Développer pour Azure Storage

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

  • Une file d'attente est une ligne d'attente de messages à traiter.
  • Traitement dans l'ordre : premier entré, premier sorti.
  • Chaque message représente une petite unité de travail.
  • Une fois traité, le message est supprimé de la file.

Schéma de file d'attente

Développer pour Azure Storage

Fonctionnement d'Azure Storage Queues

File d'attente : explication

  • Azure Storage Queues fait partie de votre Storage account.
  • Les messages peuvent atteindre 64 KB et sont stockés de façon pérenne.
  • Les applications peuvent :
    • Envoyer des messages à la file.
    • Recevoir et traiter des messages.
    • Supprimer les messages après traitement.
  • Les messages persistent même si le système redémarre.
Développer pour Azure Storage

Le flux de travail asynchrone

 

 

Flux de travail asynchrone

  • L'expéditeur ajoute un message, par exemple « Traiter le paiement de Order 2045 »
  • Un service en arrière-plan comme une Azure Function récupère le message.
  • Après succès, le message est supprimé.
  • Ce modèle maintient l'évolutivité et la réactivité sous charge.
Développer pour Azure Storage

Cipher Coffee en action

  • Le site de Cipher Coffee envoie une commande dans la file.
  • Le système d'exécution des commandes lit le message.
  • Le message déclenche des mises à jour de la base de données et du paiement.
  • Les baristas sont avisés sans ralentir le passage à la caisse.

Traitement des commandes

Développer pour Azure Storage

Avantages des files d'attente

  • Dissociation : les systèmes fonctionnent de façon indépendante.
  • Évolutivité : ajouter des travailleurs pour traiter plus vite.
  • Fiabilité : les messages persistent même en cas d'arrêt.
  • Intégration : fonctionne avec Azure Functions et Logic Apps.

Système indépendant

Système évolutif

Système fiable

Screenshot 2025-10-27 at 5.42.20 pm.png

Développer pour Azure Storage

Cycle de vie d'un message

Screenshot 2025-10-27 at 5.48.34 pm.png

  • Les messages passent par trois étapes :
    • Enqueue : le message est ajouté à la file.
    • Dequeue : un travailleur le récupère pour traitement.
    • Delete : le message est supprimé après succès.
  • Les échecs réapparaissent automatiquement pour une nouvelle tentative.
Développer pour Azure Storage

Cas d'utilisation courants

  • Traitement des commandes et facturation en arrière-plan.

Icône commande

  • Envoi de courriels d'avis.

Icône courriel

  • Tampon de télémétrie IoT.

Icône IoT

  • Collecte de journaux et pipelines d'événements.
    • Utilisez des files pour des opérations indépendantes et reprises sûres.
    • Et bien plus
Développer pour Azure Storage

Files d'attente vs Service Bus

  • Azure Service Bus est utilisé pour des scénarios de messagerie avancés.
  • Service Bus prend en charge :
    • L'ordonnancement des messages et les sessions.
    • Les transactions et les rubriques/abonnements.
  • Azure Storage Queues est plus simple et économique pour des charges légères.
  • Cipher Coffee utilise les files pour le traitement des commandes et les mises à jour en temps réel.

Screenshot 2025-10-27 at 6.13.37 pm.png

Développer pour Azure Storage

Passons à la pratique !

Développer pour Azure Storage

Preparing Video For Download...