-
Tipo
Cursos
-
Modalidad
Online / A distancia (+)
-
Duración / Créditos
30 h.
-
Fechas
Matric. Permanente
-
Sedes
Barcelona/Madrid
Información general
DESCRIPCIÓN:
El presente curso proporcionará al participante sólidos conocimientos y habilidades en el desarrollo de aplicaciones bajo el enfoque arquitectónico y organizativo de los microservicios en Java, estos pequeños servicios independientes se integrarán con el uso del entorno de trabajo Spring Boot, de igual manera se aplicaran en un proyecto a desarrollar arquitecturas como RabbitMQ, SprintAMQ, gestión de punto de acceso con ZUUL, balanceo de cargas con Ribbon e implementación del patrón CircuitBreaker con Hystrix.
El temario del curso se desarrollará durante 30 horas, bajo la modalidad Online, es recomendable mantener el ritmo en esta capacitación, poseer conocimientos en programación Java SE y Java EE.
El temario del curso se desarrollará durante 30 horas, bajo la modalidad Online, es recomendable mantener el ritmo en esta capacitación, poseer conocimientos en programación Java SE y Java EE.
Titulación universitaria
Certificado de profesionalidad
ASPECTOS A TENER EN CUENTA
FINALIDAD DEL PROGRAMA FORMATIVO:
- Diferenciar entre arquitecturas de aplicaciones monolíticas y las fundamentadas en microservicios.
- Desarrollar aplicaciones con el uso de la arquitectura de microservicios.
- Aplicar el enfoque domain driven design para el desarrollo de arquitecturas de microservicios.
- Emplear Test Driven Development durante la etapa de desarrollo.
- Compilar aplicaciones monolíticas y de tres capas con Spring Boot.
- Migrar desde una aplicación monolítica a una arquitectura de microservicios.
- Desarrollar una arquitectura basada en eventos mediante RabbitMQ y Spring AMQP.
- Independizar la interfaz de usuario de los microservicios.
- Efectuar descubrimiento de servicios con Eureka y balanceo de carga a través de Ribbon.
- Direccionar la comunicación entre microservicios empleando el patrón API Gateway con Zuul.
- Diseñar y aplicar pruebas de integración con Cucumber
- Entender cómo efectuar logging con ELK.
- Entender cómo efectuar trazabilidad con Spring Cloud Sleuth y Zipkin.
- Concretar los beneficios más importantes de la ejecución de microservicios en contenedores como Docker, Kubernetes, Openshift.
- Desarrollar aplicaciones con el uso de la arquitectura de microservicios.
- Aplicar el enfoque domain driven design para el desarrollo de arquitecturas de microservicios.
- Emplear Test Driven Development durante la etapa de desarrollo.
- Compilar aplicaciones monolíticas y de tres capas con Spring Boot.
- Migrar desde una aplicación monolítica a una arquitectura de microservicios.
- Desarrollar una arquitectura basada en eventos mediante RabbitMQ y Spring AMQP.
- Independizar la interfaz de usuario de los microservicios.
- Efectuar descubrimiento de servicios con Eureka y balanceo de carga a través de Ribbon.
- Direccionar la comunicación entre microservicios empleando el patrón API Gateway con Zuul.
- Diseñar y aplicar pruebas de integración con Cucumber
- Entender cómo efectuar logging con ELK.
- Entender cómo efectuar trazabilidad con Spring Cloud Sleuth y Zipkin.
- Concretar los beneficios más importantes de la ejecución de microservicios en contenedores como Docker, Kubernetes, Openshift.
¿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.
TITULACIÓN
Curso Microservicios en Java con Spring Boot
Requisitos
Es recomendable tener conocimientos previos de programación en Java SE y Java EE para un correcto aprovechamiento de la presente formación.
TEMARIO
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.
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.
SALIDAS PROFESIONALES
Con esta formación podrás ejercer como profesional cualificado en puestos de trabajo de:
- Especialista en programación Java
- Asesor de sistemas informáticos
- Ingeniero de Software Java
- Programación
- Departamentos de informática
TE RECOMENDAMOS VER TAMBIÉN
En los siguientes enlaces podrás ver programas formativos similares:
UBICACIONES DE NUESTRAS SEDES
-
Barcelona
Avinguda Diagonal, 98-100 - Distrito 22
-
Madrid
c/ Arregui y Aruej, 25-27
Opiniones
No hay opiniones registradas para este curso