Aller au contenu
Tous les projets

Plateforme de streaming · Binôme

Real-Time Shop Data Streaming

Des tickets de vente diffusés via Kafka, stockés, surveillés et exposés en direct.

pipeline de ventes sur un socle Kafka
Temps réel
pipeline de ventes sur un socle Kafka
seuil de stock qui déclenche une alerte
<10%
seuil de stock qui déclenche une alerte
docker-compose up pour lancer la plateforme
1 commande
docker-compose up pour lancer la plateforme

01 Contexte

Un pipeline qui simule des ventes en magasin en temps réel : des tickets sont générés en continu, transitent par Kafka, sont stockés dans PostgreSQL et exposés via des API. Toute la plateforme démarre avec une seule commande docker-compose.

02 Problème

Des données de vente en temps réel n'ont de valeur que si le socle ne perd aucun événement, si les services sont reproductibles et si l'équipe voit les niveaux de stock, les ventes par magasin et les ruptures au moment où elles arrivent.

03 Ce que j'ai construit

Schéma d'architecture : Real-Time Shop Data StreamingSOURCEINGESTIONSTOCKAGEEXPOSITIONGénérateur de ticketsServeurAPI d'ingestionKafkaSaverPostgreSQLNotifierstock < 10%API adminstats · stock · alertesPrometheus + Grafana

construit par moi coéquipier

  1. 01

    Socle Kafka - le serveur d'ingestion reçoit les tickets et les publie dans Kafka.

  2. 02

    Stockage - PostgreSQL pour les tickets, le stock et les alertes.

  3. 03

    Orchestration - docker-compose pour tous les services (Zookeeper, Kafka, PostgreSQL, applications, monitoring).

  4. 04

    Observabilité - Prometheus et Grafana.

  5. 05

    API d'administration - expose les tickets, les ventes par magasin, le stock actuel et les alertes de stock bas (seuil < 10 %).

04 En action

  • Logs du broker Kafka du pipeline de streaming
  • Logs du service Grafana de la stack de monitoring

Captures issues du dépôt du projet.

05 Résultats

  • pipeline de ventes sur un socle KafkaTemps réel
  • seuil de stock qui déclenche une alerte<10%
  • docker-compose up pour lancer la plateforme1 commande

06 Ma part

Moi

  • Orchestration docker-compose
  • Socle Kafka & PostgreSQL
  • Prometheus & Grafana
  • Serveur d'ingestion
  • API d'administration

Coéquipier

  • Générateur de tickets
  • Saver (consumer Kafka → PostgreSQL)
  • Notifier de stock

07 Ce que j'ai appris

  • Kafka découple producteurs et consommateurs : l'ingestion continue même quand le stockage ou les alertes prennent du retard.
  • docker-compose transforme une plateforme multi-services en quelque chose que n'importe qui peut lancer en une commande.
  • Instrumenter un système temps réel dès le premier jour (Prometheus, Grafana) est le seul moyen de voir ce qu'il fait vraiment.
  • Des frontières claires entre plateforme et services applicatifs rendent un projet de streaming en binôme gérable.

Étude de cas suivante

Materials Similarity Search

Copied