Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Inducción Microservicios
Inducción Microservicios
Arquitectura de
Microservicios
Monolitos Microservicios
De la arquitectura monolítica a
microservicios
De la arquitectura monolítica a
microservicios
Piensa en Multigraneado, no en “Micro”
Menor acomplamiento, mayor agilidad
Fuente: Gartner
De la arquitectura monolítica a
microservicios
Patrón de arquitectura Monolítica
Concepto
• La aplicación software se estructura de forma que todos los aspectos
funcionales quedan acoplados y sujetos en un mismo programa.
Ventejas
• Fácil de construir, desplegar, y ejecutar
• La aplicación se ejecuta en un único servidor (scaling-up manual)
• Baja latencia para comunicarse entre procesos internos (dominos
funcionales)
• Fácil para pruebas y monitoreo de logs
• Fácil para la gestión de transaccionabilidad y base de datos
Desventajas
• Demasiado código fuente en un solo lugar
• Escalamiento de nodos manuales (cluster) y demasiados personas para
realizarlo y mantener los servidores
• Si se realiza un cambio, se tiene que bajar el servicio y volver a desplegar
toda la aplicación
• Mientras mas crece la aplicación con mas funcionalidades, mas costoso es
el mantenimiento y genera sobretiempo de trabajo
• Saturación de base de datos si es una aplicación altamente transaccionable
con usuarios concurrentes
De la arquitectura monolítica a
microservicios
Patrón de arquitectura de Microservicios
Concepto
• La aplicación software no es un solo producto sino cada una de sus
funciones responde de forma autónoma a las demás. (funcionalidades
agrupadas por dominio de negocio)
Ventejas
• Autoescalamiento y tolerancia a fallos, ya que no tiene un punto único de
falla
• Funcionalidades distribuidas en aplicaciones pequeñas, la cual hace fácil de
mantener y reescribir (Desarrollo escalable)
• Despliegue de forma más continua y de una forma más ágil (Despliegue
independiente)
Desventajas
• Mientras mas granulado mas difícil de orquestar los aplicativos
• La latencia de red
• Desarrollo y pruebas mas complejas por sistema distribuido
• Manejo mas complejo de transacciones distribuidas por múltiples servicios
• Manejo mas complejo en monitoreo y gestión
Principales componentes
de microservicios
Principales componentes de
microservicios
Engine
Database
Principales componentes de
microservicios
Clientes
Principales componentes de
microservicios
Clientes
Principales componentes de
microservicios
Clientes
Arquetipo de microservicios
Principales componentes de
microservicios
Arquetipo de microservicios
Principales componentes de
microservicios
Arquetipo de Microservicios
Gestión de microservicios
Principales componentes de
microservicios
Gestión de microservicios
Principales componentes de
microservicios
Gestión de microservicios
• Gestión de logs distribuido que no este • Gestionar las configuraciones de la aplicación fuera
a nivel aplicación (grayLog, Logstash) de la aplicación, por medio de un Config Server
• Monitoreo por medio de un APM • Las configuraciones pueden ser conexión base de
(Application Performance Management) datos, third-parties, etc.
como Prometheus, Dynatrace, NewRelic
Principales componentes de
microservicios
Gestión de microservicios
• Balancear la carga por medio de un • Buscan soluciones que garanticen soportar altas
orquestador de microservicios que cargas de procesamiento paralelo (scaling-up)
cubra la coreografía (kubernetes) • Soluciones end-to-end que permitan aumentar ante
• Saber a que nodo se va ir, del API que alta carga y disminuir ante la usencia de ésta manera
deseo llamar y este prendido (Health automática (scaling-out y scaling-down)
check)
Principales componentes de
microservicios
Gestión de persistencia
Principales componentes de
microservicios
Gestión de persistencia
Principales componentes de
microservicios
Gestión de persistencia
Diferencias de Microservicios
On-Premise y Cloud
Diferencias de Microservicios
On-Premise y Cloud
ON-PREMISE CLOUD
Diferencias de Microservicios
On-Premise y Cloud
Serverless el Presente o
Futuro
Serverless el Presente o Futuro
Tradicional vs Serverless
TRADICIONAL
SERVERLESS
Serverless el Presente o Futuro
Por qué construir Aplicaciones Serverless?
Mas información:
https://docs.aws.amazon.com/es_es/lambda/latest/dg/gettingstarted-
limits.html
Serverless el Presente o Futuro
Casos de Uso
Cambio en
estado de datos
Peticiones a
endpoints
Cambios en
estado de
recursos
Serverless el Presente o Futuro
Casos de Uso
Serverless el Presente o Futuro
Casos de Uso
GRACIAS