Temario del curso
Introducción
- Arquitectura de sistemas y de servicios, PaaS y diseño nativo en la nube
Visión general de la arquitectura de sistemas monolíticos
- Ejecución de toda la funcionalidad de una aplicación monolítica en un único proceso
- Escalabilidad mediante replicación en múltiples servidores
- Protocolos utilizados en sistemas monolíticos: EAI, CORBA, etc.
Visión general de los servicios web
- Arquitectura Orientada a Servicios (SOA) y arquitectura de microservicios
Arquitectura Orientada a Servicios (SOA)
- Beneficios y costos de la SOA
- Éxitos y fracasos en la implementación de SOA
- Mensajería y ESB
- Infraestructura y herramientas que apoyan la SOA
Cómo los microservicios implementan los conceptos de servicios web
- Hacer una sola cosa y hacerlo bien
- DevOps
- Despliegue y entrega continuos (Integración Continua, Proceso de Construcción Continua, etc.)
- Protocolos ligeros
Protocolos y estándares de microservicios
- HTTP, JMS, AMQP, Websockets, JSON, etc.
Frameworks de desarrollo para la construcción de microservicios
- Frameworks basados en Java (Spring Cloud)
- Frameworks basados en JavaScript (Seneca)
Descomposición de una aplicación monolítica
- Desarrollo de aplicaciones desplegable de forma independiente
- Organización de aplicaciones de microservicios en torno a capacidades empresariales
- Estudio de caso: Migración de una aplicación monolítica a tres microservicios centrales
Configuración de un entorno de desarrollo con Spring Cloud
- Configuración de Docker y Docker Compose
- Configuración de variables de entorno
Visión general de Spring Cloud y Spring Boot
- Subproyectos de Spring Cloud: Config Server & Bus, Eureka, Ribbon, Feign y Hystrix
- Spring Boot
Creación de una aplicación con Spring Boot
Gestión centralizada y versionada de la configuración con Spring Cloud Config
Actualizaciones dinámicas de configuración con Spring Cloud Bus
Detección de servicios con Eureka
Balanceo de carga con Ribbon
Aplicación de cortacircuitos con Hystrix
Clientes REST declarativos con Feign
Trabajo con API Gateway
Protección de una aplicación de microservicios
Rastreo de microservicios para identificar latencias
Despliegue de microservicios
- Contenedores (Docker, K8N, LXC, etc.)
- Gestión de configuración (Ansible, etc.)
- Detección de servicios
- Monitoreo y gestión de microservicios
- Infraestructura para microservicios
Nube y escalabilidad automática de microservicios
- Redundancia y conmutación por fallo de microservicios
- Escalabilidad de rendimiento para microservicios
- Escalabilidad automática
- Implementación de microservicios en OpenStack, AWS y otras plataformas en la nube
Resolución de problemas comunes en aplicaciones distribuidas
- Complejidad del ecosistema
- Rendimiento de la red
- Seguridad
- Despliegue
- Pruebas
- Nanosservicios
Consideraciones finales para la construcción de sistemas listos para producción
- Hacer que el sistema sea fácil de usar para principiantes
- Hacer que el sistema sea completo para que pueda servir como base para aplicaciones empresariales
Resumen y conclusión
Requerimientos
- Conocimientos de ingeniería de software y de sistemas
- Experiencia en desarrollo con Java
- Experiencia con el framework Spring
Público objetivo
- Desarrolladores de Java que deseen construir y desplegar microservicios de manera rápida
- Arquitectos de sistemas que deseen implementar una arquitectura de microservicios
Testimonios (2)
Practica ejercicios en EA.
Pawel - Krajowa Szkola Skarbowosci
Curso - UML in Enterprise Architect (workshops)
Traducción Automática
Las prácticas
Ivan - si
Curso - Spring Cloud for Microservices
Traducción Automática