Personal · aprendizaje · Otro

Biblioteca Hexagonal

Gestión de biblioteca con arquitectura hexagonal, alquiler asíncrono por Kafka y MySQL.

  • Java 17
  • Spring Boot 3
  • Kafka
  • MySQL
  • Docker

Aprendizajes destacados

  • Puertos y adaptadores, dominio aislado
  • Alquiler asíncrono mediante Kafka

Objetivo y alcance

Sistema de gestión de biblioteca construido con arquitectura hexagonal, separando dominio, aplicación e infraestructura mediante puertos y adaptadores. El alquiler de libros funciona de forma asíncrona con dos topics de Kafka (alquiler-requests y alquiler-responses), y la persistencia soporta tanto JDBC como JPA sobre MySQL.

Práctica técnica

  • Separación estricta entre dominio, aplicación e infraestructura siguiendo arquitectura hexagonal.
  • La solicitud ingresa por REST, se publica en Kafka y su resultado puede consultarse mediante el identificador de la petición.
  • Persistencia intercambiable entre JDBC y JPA, con perfiles para H2 en memoria o MySQL.
Solicitud REST de alquiler
Solicitud REST de alquiler
Alquiler asíncrono vía Kafka
Alquiler asíncrono vía Kafka
Logs de Kafka procesando el evento
Logs de Kafka procesando el evento