Tous les Projets
Backend
Streaming d'Événements Temps Réel — Kafka + Spring Cloud Stream
Traitement fonctionnel de flux d'événements avec Spring Cloud Stream et Kafka Streams : un supplier produit des page-events, une function les transforme, et un pipeline KStream applique des fenêtres glissantes de 5 s pour des analytics par page en temps réel diffusées au navigateur via Server-Sent Events.
Kafka Streams
Streaming engine
5s sliding
Window size
SSE
Live transport
4
Functional beans
Approche
Beans fonctionnels supplier/function/consumer + agrégation KStream fenêtrée diffusée en direct via SSE
Stack Technique
Java 17Spring Boot 3.3Spring Cloud StreamApache KafkaKafka StreamsDocker Compose
Mots-clés
Apache KafkaKafka StreamsSpring Cloud StreamEvent-DrivenSSEDockerWindowing
Analyse Approfondie
Un pipeline orienté événements bâti autour du modèle de programmation fonctionnelle de Spring Cloud Stream, avec des agrégations Kafka Streams à état.
Pipeline
pageEvent1Supplier ──► topic R2 ──► pageEvent1Consumer (logs)
└─► pageEvent1Function (transformation)
StreamBridge
GET /publish/{topic}/{name} ─────► topic
│
KStream1Function: filtre ──► fenêtre 5s ──► comptage par page ──► topic R4
│
GET /analytics ◄── Server-Sent Events ◄── requête interactive (state store)
Beans fonctionnels
| Bean | Type | Rôle |
|---|---|---|
pageEvent1Supplier | Supplier | Émet des PageEvent1 vers R2 en continu |
pageEvent1Consumer | Consumer | Consomme & affiche les événements |
pageEvent1Function | Function | Transforme les événements |
KStream1Function | KStream | Filtre, fenêtre (5s), compte par page → R4 |
Points forts
- ▸Agrégation fenêtrée à état avec requêtes interactives sur le state store
- ▸Analytics temps réel poussées vers l'UI via Server-Sent Events
- ▸Brokers Kafka démarrés avec Docker Compose pour un dev local en une commande