Resumen
En esta clase y subsiguientes, vamos a cambiar un poco el enfoque para empezar a charlar sobre temas de Arquitectura. Entendiendo cómo diseño de arquitectura, el diseño (y sus decisiones) de lo más importante. Es decir sus componentes, relaciones, comunicaciones y cómo tiene injerencia, no solo en las piezas de software sino en los componentes de hardware, tecnologías, costos y contexto.
En particular, presentaremos una arquitectura monolítica HTTP. Estudiaremos su documentación mediante diagramas de despliegue y algunas de las decisiones con las que nos toparemos.
Además, discutiremos sobre las implicancias de la arquitectura de sistemas.
Por últimos 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
.
Material
- Presentación de la clase
- Arquitecturas Concurrentes, Episodio 1: El diablo está en los detalles
- Listado de componentes arquitecturales comunes
- Demo de nginx
- Guía de ejercicios de Arquitectura. Trabajaremos con EntregaYaYaYa y A.F. Analytics. Recomendamos también leer Rekomendashi, Fase 2
- Soluciones (No verlas sin intentar resolver el ejercicio antes)
- OpcionalComunicación de decisiones arquitectónicas
- Opcional Introducción a arquitectura
Para la próxima clase
- Guía de ejercicios de Arquitectura. Hacer Rekomendashi (si no lo leíste/pensaste ya), Shera Enterprise y Cyberfriday