Uploaded by yqmybymzmmhhdrpfeb

Resumen MasteringCHaos Alfonso

advertisement
Resumen: Mastering Chaos
Alumno: Alfonso León Macedo
Escalabilidad
Qué es un servicio sin estado: No una cache o base de datos, tendrá metadata
accesada frecuentemente, no almacena grande volumen de datos, no tenemos que
preocuparnos por una perdida de nodo, la mejor estrategia es la replicación.
Grupos Auto escalables
Tienes un tamaño mínimo y máximo y la capacidad deseada y puedes escalar en
medida que sea necesario.
Para que funcione debe estar replicado, su primera herramienta para Caos fue
“Chaos Monkey”, que funciona básicamente, si un nodo muere, todo lo demás sigue
funcionando.
Tenían empleados de yahoo trabajando en Netflix que tenían experiencia comon
proxies y tenían nodos dedicados para los clientes, entonces, un cliente siempre se
conectaba al mismo nodo y solo había una copia de ese dato, lo que esto provocaba
era un único punto de falla y en dado caso que fallara el nodo, dichos clientes no
podían accesar a los datos.
La redundancia es fundamental, por ejemplo, en el cuerpo humano tenemos 2
riñones por si uno falla, el sistema pueda seguir funcionando, y parecido a eso,
Netflix utiliza una tecnología llamada EVCache que se encarga de realizar varias
copias en varios nodos, entonces cada vez que se escribe una copia, se escribe en
diferentes localizaciones de nodos, solo la lectura es únicamente local.
EVCache puede tomar 30 millones de peticiones por segundo, tiene cientos de
billones de objetos y latencias de milisegundos.
Variedad en la arquitectura
Entre más variedad tengas, más grandes tus retos serán, porque incrementa la
complejidad del ambiente que estás gestionando.
Para tener mejores prácticas, se necesita construir un ambiente en donde los
empleados no necesitan pensar mucho en lo que van a hacer, que esas prácticas
se hagan en piloto automático, por así decirlo, en Netflix desarrollaron un ciclo de
aprendizaje continuo y automatización, típicamente ese aprendizaje viene de algún
incidente de ese incidente una solución, la revisaban, la analizaban y veían si podían
hacerla un proceso de automatización para “adoptarla” para una buena práctica.
Variedad intencional (contenedores)
Es introducir intencionalmente nuevas tecnologías a la arquitectura de multiservicio,
el costo de introducir una nueva tecnología es la curva de aprendizaje al iniciar el
trayecto de su implementación antes de que te puedas volver bueno en esto.
El fin de semana es cuando más disponibilidad de servicio se tiene, en cuanto a la
hora, hay más problemas a las 9 am.
Ley de Conway: Las organizaciones que diseñan sistemas están limitadas a
producir diseños que son copias de las estructuras de comunicación de estas
organizaciones.
Toda pieza de software refleja la estructura organizacional que la produjo.
Pensando en el cliente y su experiencia, pudieron obtener algo mucho más potente.
Se aprendieron lecciones tales como: soluciones primero, equipo después,
reconfigura equipos para apoyar mejor tu arquitectura.
La arquitectura de microservicios es compleja y orgánica, la salud depende de la
disciplina y de inyectar caos en ese ambiente regularmente.
Download