Volver a proyectos
Proyecto académico

OrionTicket

Rol: Desarrollador Backend

JavaSpring FrameworkRabbitMQRedisNoSQL (MongoDB)KubernetesPostgreSQL (HA)k6OpenTelemetryPrometheus & Grafana

Contexto y Problema

OrionTicket se concibió como un proyecto educativo de la universidad con el objetivo final de demostrar capacidades avanzadas en alta disponibilidad de bases de datos, resiliencia, alta concurrencia, observabilidad, el patrón CQRS y el uso de tecnologías como Redis, RabbitMQ, k6 y bases de datos NoSQL. Sin embargo, la meta primordial de esta arquitectura distribuida fue comprender a fondo cómo Kubernetes y la orquestación nativa de la nube resuelven los mayores desafíos operativos (escalado dinámico de pods, service discovery interno y auto-recuperación ante fallos del clúster) al desplegar una plataforma de venta de boletos a gran escala. Aún está en fase de desarrollo

Logros y Destacados

  • >Diseñé e implementé la arquitectura de microservicios autónomos utilizando Java 21 y Spring Boot, aislando bases de datos e integrando el patrón CQRS para separar la escritura de la lectura rápida.
  • >Configuré la comunicación asíncrona basada en eventos de dominio utilizando RabbitMQ, con consumidores idempotentes, reintentos y colas DLQ para garantizar consistencia eventual bajo alta carga.
  • >Desarrollé el módulo de control de accesos en tiempo real con semántica 'first-scan-wins', aplicando bloqueos y caché en Redis para prevenir fraude y doble validación de códigos QR.
  • >Orquesté la infraestructura analizando cómo Kubernetes resuelve desafíos críticos de escalamiento horizontal automático, tolerancia a fallos, Service Mesh y balanceo de carga.
  • >Realicé pruebas de estrés y rendimiento utilizando k6 para simular picos de concurrencia y certificar la resiliencia del clúster de base de datos PostgreSQL en alta disponibilidad.

Diagrama de Arquitectura