Udemy
    •  
    •  
    •  
    •  
    •  
    •  
    •  
    •  
Turn what you know into an opportunity and reach millions around the world.
Learn More
Your cart is empty.
Keep shopping
Spring Boot 4: Arquitectura de Microservicios
Bestseller
Hot & New
Rating: 4.8 out of 5(31 ratings)
376 students

What you'll learn

  • Diseñar y construir una arquitectura de microservicios completa con Spring Boot 4, aplicando patrones como Config Server, Service Discovery y API Gateway.
  • Implementar comunicación síncrona con OpenFeign y asíncrona con RabbitMQ, aplicando patrones de resiliencia con Resilience4j (Circuit Breaker, Retry, Bulkhead).
  • Configurar seguridad centralizada con OAuth2, JWT y Keycloak como Identity Provider, protegiendo los endpoints de todos los microservicios de forma uniforme.
  • Desplegar microservicios en contenedores Docker y orquestarlos con Kubernetes (Minikube), incluyendo observabilidad con Micrometer, Prometheus, Grafana y Zipkin

Course content

13 sections183 lectures21h 12m total length
  • Introducción al curso3:32
  • ¿Cómo funciona el curso?5:33
  • ¿Cómo hacer preguntas?4:23
  • Instalaciones necesarias8:16
  • Instalación de Docker7:15

Requirements

  • Conocimientos sólidos de Java (POO, colecciones, excepciones) y experiencia básica con Spring Boot (crear APIs REST, inyección de dependencias).
  • Tener Docker Desktop instalado. No se requiere experiencia previa con Docker ni Kubernetes.

Description

Este curso está diseñado para desarrolladores Java que quieren entender y construir microservicios con Spring Boot 4, aplicando criterios de arquitectura, buenas prácticas y herramientas utilizadas en proyectos profesionales.


A lo largo del curso no solo aprenderás qué hacer, sino por qué se toman ciertas decisiones técnicas al diseñar APIs y sistemas distribuidos. Partimos desde una base sólida —configuración del entorno, estructura de proyectos profesional y fundamentos de microservicios— para luego avanzar hacia la construcción de servicios completos y desacoplados.



En las primeras secciones desarrollamos un Product Service como núcleo del sistema, utilizando Spring Boot 4, MongoDB y Docker, evitando dependencias innecesarias en el entorno local. Aprenderás a organizar el código en capas claras (Controller, Service, Repository y Model), aplicar MapStruct para el mapeo entre entidades y DTOs, y manejar errores de forma moderna mediante Global Controller Advice y ProblemDetail (RFC 7807).


El curso pone especial énfasis en diseño limpio y mantenible: separación de responsabilidades, validación de datos, inyección de dependencias por constructor, logging estructurado y manejo de errores profesional.


A medida que el proyecto evoluciona, incorporamos los componentes clave de una arquitectura de microservicios real:

  • Config Server para configuración centralizada

  • Eureka para Service Discovery

  • API Gateway como punto de entrada único

  • Comunicación síncrona con WebClient y HTTP Interfaces


La resiliencia se implementa con Resilience4j (Circuit Breaker, Retry, Timeout), y la comunicación asíncrona con RabbitMQ, incluyendo el patrón Saga para transacciones distribuidas, Dead Letter Queues y Transactional Outbox para garantizar consistencia eventual.


La seguridad se implementa con OAuth2, JWT y Keycloak como Identity Provider, incluyendo Token Relay, verificación de identidad con Gmail y control de acceso basado en roles.


Para observabilidad, utilizamos el stack moderno: OpenTelemetry para instrumentación, Prometheus para métricas y Grafana para visualización y monitoreo (LGTM Stack).


Finalmente, desplegamos todo el sistema con Docker Compose y Kubernetes (Minikube), migrando de Eureka a service discovery nativo de Kubernetes, simulando un entorno de producción real. El curso también incluye Virtual Threads de Java 21 para mejorar el rendimiento en escenarios de alta concurrencia.


Who this course is for:

  • Desarrolladores Java/Spring Boot que ya crean aplicaciones monolíticas y quieren dar el salto a arquitecturas de microservicios con tecnologías cloud-native.