Temario del curso
Introducción a los Sistemas Distribuidos
- ¿Qué es un sistema distribuido?
- Desafíos comunes: latencia, consistencia y disponibilidad
- Visión general de los componentes del sistema y los modelos de comunicación
Principios de Escalabilidad
- Escalabilidad vertical frente a horizontal
- Equilibrio de carga y elasticidad
- Escalado del almacenamiento, la capacidad de cómputo y la E/S
Patrones Arquitectónicos
- Arquitecturas cliente-servidor y multitier
- Arquitecturas orientadas a servicios y de microservicios
- Arquitectura impulsada por eventos y colas de mensajes
Teorema CAP y Modelos de Consistencia
- Explicación del teorema CAP
- Consistencia fuerte frente a consistencia eventual
- Elegir entre consistencia y disponibilidad
Estrategias de Distribución y Almacenamiento de Datos
- Particionamiento y fragmentación (sharding)
- Estrategias de replicación y lecturas/escrituras con quórum
- Bases de datos distribuidas y almacenes de clave-valor
Comunicación y Coordinación en Sistemas Distribuidos
- REST, gRPC y corredores de mensajes (por ejemplo, Kafka, RabbitMQ)
- Elección de líder y consenso distribuido
- Uso de Zookeeper o etcd para la coordinación
Tolerancia a Fallos y Confiabilidad
- Diseño para fallos y degradación elegante
- Mecanismos de reintento, tiempos de espera y disyuntores (circuit breakers)
- Monitoreo, observabilidad e ingeniería del caos
Prácticas de Implementación Nativas para la Nube y Modernas
- Contenedores, orquestación y Kubernetes
- Estado sin memoria (statelessness) e inmutabilidad
- Mejores prácticas para la seguridad de sistemas distribuidos
Resumen y Próximos Pasos
Requerimientos
- Comprensión de los conceptos básicos de redes y diseño de sistemas
- Experiencia con prácticas generales de desarrollo de software
- El conocimiento previo de la computación en la nube y el diseño de APIs es beneficioso
Audiencia objetivo
- Arquitectos de software y líderes técnicos
- Ingenieros backend y profesionales de DevOps
- Diseñadores de sistemas que desarrollan aplicaciones escalables en la nube
Reseñas (3)
La explicación de todos los componentes y su uso en los ejemplos
Olga Elizova
Curso - Enterprise Architecture in the UAF
Traducción Automática
Proyecto preparado en el que podríamos trabajar desde el inicio sin perder tiempo configurando archivos innecesarios para los ejercicios. Disposición a responder todas las preguntas planteadas por los participantes.
Robert Walczak - Hitachi Energy
Curso - Systems Modeling with SysML and Enterprise Architect (EA)
Traducción Automática
Practica ejercicios en EA.
Pawel - Krajowa Szkola Skarbowosci
Curso - UML in Enterprise Architect (workshops)
Traducción Automática