Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Arquitecturas Java Modernas: Evoluciona y Sobre...

Arquitecturas Java Modernas: Evoluciona y Sobrevive en el Mundo Cloud Native

En un mundo donde el cambio tecnológico es constante, las arquitecturas rígidas y frágiles ya no son sostenibles. Esta charla propone una visión práctica sobre cómo diseñar arquitecturas Java modernas que evolucionen con su entorno y sean capaces de escalar, resistir fallos y mantenerse vigentes en ecosistemas distribuidos y cambiantes.

Exploraremos herramientas y patrones que permiten sobrevivir en entornos Cloud Native: validación automatizada de reglas arquitectónicas con ArchUnit, monitoreo continuo con Prometheus y Grafana, patrones de resiliencia como circuit breakers y chaos testing, y estrategias para mantener la consistencia de datos sin perder agilidad.

Una guía clara para quienes están comenzando, creciendo o liderando equipos, y quieren construir software Java capaz de adaptarse sin romperse.

Avatar for Jesús Aguirre

Jesús Aguirre

October 25, 2025
Tweet

More Decks by Jesús Aguirre

Other Decks in Technology

Transcript

  1. Arquitecturas Java Modernas Evoluciona y Sobrevive en el Mundo Cloud

    Native Jesus Aguirre Sr Systems Engineer - Indra Cloud Native Panamá
  2. Acerca de mi Apasionado por construir comunidades técnicas colaborativas, optimizar

    la experiencia de los desarrolladores y escalar plataformas modernas.
  3. Gran parte del CÓDIGO LEGACY que impulsa sistemas EMPRESARIALES está

    escrito en JAVA. Y están a la ESPERA de ser MODERNIZADO a CLOUD NATIVE, no REESCRITO en otro lenguaje!
  4. Estigmas de Java en la actualidad JVM Los retrasos en

    el arranque en frío y el alto consumo de memoria RAM han generado un problema de reputación para Java en entornos con contenedores. La Realidad La arquitectura tradicional de la JVM fue diseñada para paradigmas de computación diferentes.
  5. Pilares claves Resiliencia y Observabilidad en la Nube Java Optimizado

    y la Reinvención de la JVM Gobernanza y Calidad Arquitectónica Continua
  6. Java Optimizada y la Reinvención de la JVM Arranque Instantáneo:

    GraalVM y AOT eliminan el cold start de Java en contenedores. Ahorro en K8s: Menos RAM por Pod se traduce en una reducción directa de costos de hosting. Evolución Pragmática: Uso de frameworks (Quarkus/Micronaut/Helidon) para modernizar sin reescribir.
  7. Java como PILAR de proyectos CNCF. Strimzi gestiona millones de

    mensajes de Kafka en Kubernetes. Keycloak protege la identidad de aplicaciones enterprise globales.
  8. Gobernanza y Calidad Arquitectónica Continua Arquitectura como Código: Codificar las

    reglas de diseño con ArchUnit, convirtiendo el diseño en pruebas JUnit. Defensa Continua: Usar Fitness Functions para validar automáticamente la salud del diseño a lo largo del tiempo. Cero Deterioro: Detener integraciones que violen reglas directamente en el CI/CD, asegurando la calidad antes del despliegue.
  9. Fitness Functions: Cuando tu Arquitectura se Defiende Sola Gobernanza arquitectónica

    tradicionalmente significa comités, documentos y reuniones. Este libro propone algo revolucionario: convertir nuestros principios arquitectónicos en tests automatizados que fallan cuando la arquitectura se desvía del rumbo.
  10. ArchUnit Te permite escribir las reglas de diseño de tu

    arquitectura como pruebas JUnit. Si alguien rompe una de esas reglas, la compilación falla de inmediato.
  11. El Reto Los monolitos heredados suelen tener dependencias enredadas, donde

    la lógica de negocio está acoplada directamente a aspectos de infraestructura como bases de datos y APIs. La solución Prohibir que la capa de Dominio dependa de la capa de Infraestructura. Esto protege la lógica de negocio y permite realizar futuras refactorizaciones hacia un Monolito Modular. Beneficio Los límites claros hacen posible extraer microservicios más adelante o reemplazar implementaciones de infraestructura sin afectar las reglas de negocio.
  12. ArchUnit te ayuda a modularizar gradualmente el código heredado con

    confianza, permitiendo una evolución segura sin recurrir a reescrituras arriesgadas de tipo “big bang”.
  13. Resiliencia y Observabilidad Cloud Native Cultura del Fallo: Implementar Circuit

    Breakers para aislar fallas y proteger tu servicio del colapso vecino. Trazabilidad Total: Usar OpenTelemetry (OTEL) para la Trazabilidad Distribuida (Métricas, Trazas), esencial para diagnosticar problemas en redes de microservicios. Diagnóstico en Tiempo Real: Prometheus/Grafana (con Micrometer) para obtener visibilidad y diagnosticar rápidamente la causa raíz en producción.
  14. La red es nuestro enemigo En un sistema distribuido, cada

    llamada de red es una oportunidad para el fallo. No puedes eliminar estos fallos, pero puedes prepararte para ellos. Fail Fast, Recover Faster Fallar rápido no es pesimismo, es pragmatismo. Es reconocer que un sistema que detecta problemas rápido es un sistema que puede recuperarse rápido. Resiliencia: Por Qué Fallar Rápido es tu Mejor Defensa?
  15. Observabilidad 1 Metrics Mediciones cuantitativas del comportamiento del sistema a

    lo largo del tiempo. Logs Registros de eventos discretos que proporcionan contexto para depuración. Traces Flujos de solicitudes de extremo a extremo a través de los límites entre servicios.
  16. Java, potenciado con AOT, ArchUnit y Observabilidad, es la opción

    de menor riesgo y mayor estabilidad para modernizar nuestras cargas de trabajo Cloud Native.