Iniciando con Microservicios
Realizado por: Grecia Delgado
con MoleculerJS
Monolitica
contiene...
Una arquitectura
Enrrutamiento
Middlewares
Logica de negocio
Acceso a la DB
Todos los features
necesarios para implementar
en una app
Microservicios
contiene...
Un
Enrrutamiento
Middlewares
Logica de negocio
Acceso a la DB
Un feature
necesarios para implementar
en una app
Cada servicio debe tener su propia base datos
Un servicio no debe "depender" de una base datos que no sea la suya
Regla #1
Regla #2
Se busca que cada servicio corra independientemente de otro
El esquema/estructura de la base de datos puede cambiar
Algunos servicios podrían funcionar mejor con otros tipos de DB's (sql vs nosql)
Veamos un ejemplo...
Sync
Async
Estrategias de comunicación entre microservicios
Sync
implica...
Una comunicación
Los servicios se comunican entre ellos usando REQUEST directos
Async
implica...
Una comunicación
Los servicios se comunican entre ellos usando EVENTOS
Veamos un ejemplo...
Sync
Ejemplo de una comunicación
Sync
Notas de una comunicación
Conceptualmente es fácil de entener
El servicio D no necesita de una DB
Se introduce dependencia entre servicios
Si algun request entre servicios falla, todos los request fallaran
El request completo solo será tan rapido como el request mas lento que se de entre servicios
Puede ser una puerta de ingreso a "Webs of request"
Async
Ejemplo de una comunicación
forma 1
Async
Ejemplo de una comunicación
forma 2
Async - (forma 2)
Notas de una comunicación
El servicio D tiene cero dependencias!
El servicio D es muy rapido!
Duplicidad de Data. Tal vez se pague por mas almacenamiento
Es mas complicado de comprender
Revisemos un ejemplo...
Infraestructura ejemplo:
MUCHAS
GRACIAS!
Hecho con ♥ por Grecia Delgado
Correo: greciadm2596@gmail.com
twitter: @chezzgre
linkedin: Grecia Delgado Muñoz
Dev-Day 4 - Women
By Grecia Delgado
Dev-Day 4 - Women
- 249