Personal · aprendizaje · Otro

Payment System

Prueba de concepto de pagos orientada a eventos con Kafka Streams, Spring Boot y Docker.

  • Java
  • Spring Boot
  • Kafka Streams
  • Docker

Aprendizajes destacados

  • Agregación de saldos por tarjeta con Kafka Streams
  • Arquitectura basada en eventos

Objetivo y alcance

Prueba de concepto de procesamiento de pagos: una API REST publica los eventos en Kafka y una topología de Kafka Streams mantiene el saldo agregado por tarjeta. La consulta expone una proyección en memoria de la aplicación y Docker Compose permite reproducir el entorno completo de forma local.

Práctica técnica

  • Topología de Kafka Streams que agrega saldos por card_id conforme llegan los eventos de pago.
  • API REST para publicar pagos y consultar una proyección en memoria, con validación de tipos de operación.
  • Infraestructura completa en Docker Compose, con Kafdrop para inspeccionar topics y mensajes.
Endpoint de registro de pagos
Endpoint de registro de pagos
Consulta de saldos agregados
Consulta de saldos agregados
Cluster de Kafka visto desde Kafdrop
Cluster de Kafka visto desde Kafdrop
Mensajes en el topic de pagos
Mensajes en el topic de pagos