Temario
- Balanceo de carga.
- Microservicios.
Resumen
En esta clase, presentaremos una arquitectura monolítica HTTP. Estudiaremos su documentación mediante diagramas de despliegue y algunas de las decisiones con las que nos toparemos. Para posibilitar su escala horizontal, introduciremos el concepto de un balanceador de carga: un dispositivo de Hardware o Software especializado que permite distribuir la carga de trabajo a los diferentes nodos a partir de un algoritmo. Haremos una demostración utilizando nginx.
Además, vamos a presentar la idea de microservicios, un enfoque para desarrollar una sola aplicación como un conjunto de “pequeños” servicios, donde cada uno se ejecuta en su propio proceso. Los mismos pueden (o no) estar escritos en diferentes lenguajes, comunicarse entre sí (por ejemplo, por medio de una API HTTP) y persistir su propios conjunto de datos. Es importante remarcar que no solo implica una forma de diseño diferente (en comparación con un monolito), sino que en líneas generales plantea un cambio a nivel organización del equipo.
Para introducir estos conceptos vamos a estar trabajando con los ejercicios de Rekomendashi, Fase 2 y SheRa Enterprise.
Material
- Presentación de la clase
- Presentación: De un nodo a muchos · Load Balancing
- Presentación: Microservicios
- Listado de componentes arquitectónicos comunes
- Demo de nginx
- Guía de ejercicios de Arquitectura. Trabajaremos con Rekomendashi, Fase 2 y SheRa Enterprise
- Soluciones (No verlas sin intentar resolver el ejercicio antes)
Para la próxima clase
- Guía de ejercicios de Arquitectura.
- Releer Rekomendashi y SheRa Enterprise y sus soluciones propuestas
- Leer Cyberfriday; ¡no veas aún su solución! La trabajaremos en clase.
- Listado de componentes arquitectónicos comunes
- Leer el apartado sobre balanceo de carga HTTP
- Las lecturas anteriores, si no las leíste antes.