Files
wiki/concepts/message-queue.md
T
2026-06-09 18:40:21 +02:00

2.1 KiB

title, created, updated, type, tags, confidence, contested, sources
title created updated type tags confidence contested sources
Message Queue 2026-06-06 2026-06-06 concept
tech
architecture
devops
high false
synthesized

📨 Message Queue (File de Messages)

Définition Courte

Composant d'architecture qui permet à des services d'échanger des messages de manière asynchrone via une file, découplant producteur et consommateur.

Explication Détaillée

Pattern de base :

  • Producer envoie un message à un topic ou queue.
  • Le broker (le middleware) stocke le message de manière durable.
  • Un ou plusieurs consumers reçoivent le message et le traitent.
  • Si le consumer crashe, le message reste dans la queue et sera rejoué.

Patterns avancés :

  • Pub/Sub : un message publié est lu par N consumers.
  • Work Queue : un message traité par un seul consumer (load balancing).
  • Dead Letter Queue : messages non traitables routés ailleurs.
  • Idempotence : le consumer doit gérer les doublons.

Garanties de livraison :

  • At most once : le message est livré 0 ou 1 fois (peut être perdu).
  • At least once : livré au moins 1 fois (doublons possibles). Le standard.
  • Exactly once : 1 fois, jamais plus. Très coûteux (Kafka transactions).

Cas d'Usage

  • Communication asynchrone entre microservices.
  • Traitement de tâches lourdes en arrière-plan (envoi de mail, génération PDF).
  • Découplage de pics (lissage de charge).
  • Event Sourcing (cf. patterns-architecture).
  • IoT : ingestion massive de capteurs.

Outils Liés

  • Kafka : le standard, throughput massif, durable.
  • RabbitMQ : classique, AMQP, plus simple.
  • NATS : léger, pub/sub natif, idéal cloud-native.
  • Redis Streams : in-memory, rapide, simple.
  • AWS SQS/SNS, GCP Pub/Sub.

Pages Liées

Questions Ouvertes

  • Kafka est-il encore pertinent face à des solutions plus modernes (Redpanda, WarpStream) ?
  • Comment tester correctement des workflows asynchrones ?