Oracle Corporation

Microservicios en Java con Spring Boot

30 horas
950,00 €
Presencial o Live Virtual Class
Presencial o Live Virtual Class

Acerca de este curso

El presente curso está diseñado con el objetivo de trasladar a los participantes una base sólida en la creación de arquitecturas de aplicaciones basadas en microservicios  en Java mediante Spring Boot.

Durante el curso se afrontará un proyecto como ejemplo en el que se aplicarán las principales prácticas relacionadas con arquitecturas basadas en microservicios, como Domain Driven design o Test Driven Development.

Los asistentes aprenderán a utilizar el popular framework Spring Boot para implementar y conectar entre sí cada uno de los microservicios, así como para implementar los principales patrones asociados a dicha arquitectura, como event sourcing con RabbitMQ y Spring AMQP, API Gateway con Zuul o Descubrimiento de Servicios mediante Eureka, balanceo de carga mediante Ribbon, Circuit Breakers con Hystrix, entro otros.

Este curso ha sido diseñado por PUE para atender la demanda de formación específica en microservicios en Java que muchas empresas y profesionales nos han trasladado. No es, por tanto, un curso oficial de Oracle University.

A quién va dirigido

Este curso está dirigido a personas con conocimientos de programación en Java interesados en añadir los conocimientos necesarios para afrontar proyectos basados en arquitecturas de microservicios con garantías de éxito.

Es recomendable tener conocimientos previos de programación en Java SE y Java EE para un correcto aprovechamiento de la presente formación. Aunque no se trata de un requisito imprescindible para realizar el curso, será recomendable por parte del alumno hacer un esfuerzo en obtener estas nociones para poder seguir el ritmo del curso con garantías.

 

Objetivos del curso

Una vez finalizado el curso, el alumno habrá adquirido los conocimientos y habilidades para:

  • Comprender las diferencias entre arquitecturas de aplicaciones monolíticas y basadas en microservicios.
  • Diseñar aplicaciones mediante una arquitectura basada en microservicios.
  • Comprender la importancia del enfoque Domain Driven Design en dichas arquitecturas.
  • Aplicar Test Driven Development en el proceso de desarrollo.
  • Diseñar aplicaciones monolíticas mediante Spring Boot.
  • Diseñar aplicaciones de tres capas mediante Spring Boot.
  • Transicionar desde una aplicación monolítica a una arquitectura basada en microservicios.
  • Implementar una arquitectura basada en eventos mediante RabbitMQ y Spring AMQP.
  • Separación del Interfaz de usuario de los microservicios
  • Implementar descubrimiento de servicios mediante Eureka y balanceo de carga mediante Ribbon.
  • Enrutar la comunicación entre microservicios aplicando el patrón API Gateway mediante Zuul.
  • Crear y ejecutar tests de integración mediante Cucumber
  • Comprender cómo implementar logging mediante ELK.
  • Comprender cómo implementar trazabilidad mediante Spring Cloud Sleuth y Zipkin.
  • Comprender conceptos fundamentales sobre transacciones en una arquitecyura basada en microservicios, como la consistencia eventual y compensación.
  • Definir los principales beneficios de la ejecución de microservicios en contenedores como Docker, Kubernetes, Openshift.

Certificación incluida

Este curso ha sido diseñado por PUE para atender la demanda de formación específica en microservicios en Java que muchas empresas y profesionales nos han trasladado. No es un curso oficial de Oracle University, por lo que no tiene una certificación oficial asociada.

Contenidos

Módulo 1: Diferencias entre arquitecturas monolíticas y distribuidas.

  • Comparación del tipo de llamadas( invocaciones)
  • Comparación de la disponibilidad de los servicios
  • Opciones de Depuración
  • Opciones de Testing
  • Efectos de la Refactorización
  • Diferencias en la Escalabilidad del sistema
  • Diferencias en el Control de transacciones
  • Comparación de los modelos de Seguridad
  • Flexibilidad del software

Módulo 2: Cómo diseñar una aplicación basada en una arquitectura basada en microservicios.

  • Consideraciones para adoptar una arquitectura basada en microservicios
  • Modelos de comunicación para microservicios: síncrona y asíncrona
  • Escenarios de comunicación
  • Estrategias para la transición desde una arquitectura monolítica a una arquitectura basada en microservicios:
  • Acceso a Bases de Datos desde una arquitectura basada en microservicios
  • Enrutamiento y Versionado
  • Librerías y Seguridad
  • Ejecución en Contenedores y el patrón Service Mesh

Módulo 3: Domain Driven Design

  • ¿Qué es Domain Driven Design?
  • Lenguaje común (Ubiquitous Language)
  • Bounded Contexts
  • Patrón CQRS (Command and Query Responsibility Segregation)
  • Patrón Event sourcing

Módulo 4: Creación de microservicios en java: Spring Boot

  • Introducción a Spring Boot
  • Creación de una aplicación básica con Spring Boot
  • Test Driven Development
  • Creación de una aplicación de tres capas con Spring Boot
  • Lógica de negocio
  • Capa de presentación (REST API)
  • Frontend
  • Capa de Datos
  • Transición de la aplicación a una Arquitectura basada en microservicios
  • Aplicación de una Arquitectura basada en eventos con RabbitMQ y Spring AMQP.
  • Solicitud de datos entre microservicios
  • Separación del Interfaz de usuario de los microservicios
  • Descubrimiento de servicios y Balanceo de carga
  • Descubrimiento de servicios mediante Eureka
  • Balanceo de carga mediante Ribbon
  • Spring Cloud Sidecar para arquitecturas heterogéneas
  • Enrutamiento con el patrón API Gateway mediante Zuul
  • Clientes de REST.
    • Implementación de Circuit Breakers con Hystrix
      • Integración de Hystrix con Zuul API Gateway
      • Integración de Hystrix con Clientes REST
    • Clientes REST con Feign.
  • Creación y ejecución de tests mediante Cucumber.
  • Logging con ELK.
  • Trazabilidad mediante Spring Cloud Sleuth y Zipkin.
  • Control de transacciones en microservicios.
  • Escalabilidad, ejecución en contenedores y el patron Service Mesh.

Convocatorias abiertas

Nota informativa

PUE está reconocido como centro oficial de formación por parte de Oracle con la figura de Oracle Approved Education Center (OAEC).

PUE cuenta, además, con el reconocimiento de formar parte del programa WDP - Workforce Development Program de Oracle. La iniciativa WDP tiene por objetivo ayudar a las instituciones académicas a preparar estudiantes como futuros especialistas en las tecnologías más demandadas por el mercado laboral.

La formación impartida por PUE en sus cursos de calendario se enmarca dentro de la iniciativa WDP y se dirige a alumnos que, tanto en situación de desempleo como profesionales en activo, deseen acceder de la forma más ventajosa posible a cursos en tecnologías Oracle (bases de datos, Java, etc) de forma oficial y reconocida.