MATERIAL DE CLASE
Requisitos de finalización
REPOSITORIO DE EJEMPLOS:
CLASES:
- Clase 1 - Introducción a Sistemas Distribuidos: Tendencias. Definición. Áreas de Aplicación. Características.
- Clase 2 - Multithreading y Multiprocessing
: Conceptos.
Mecanismos de sincronización. IPCs. Problemas clásicos. Paralelización de tareas.
- Clase 3 - Multiprocessors, Multicomputing, Comunicaciones y Virtualización : Multiprocessors, Multicomputing, TCP/UDP, Docker
- Clase 4 - Middlewares y Documentación: Middlewares. Documentación Técnica. Diagramas de Diseño.
- Clase 5 - Interfaces y Protocolos: Layers, Tiers, Interfaces, Protocolos.
- Clase 6 - Práctica de Arquitecturas Paralelas Multicomputing: Web Crawler. Shopping Cart.
- Clase 7 - Nombres, Grupos y Relojes: Nombres y Direccionamiento. Mensajes. Grupos. Tiempo y Relojes.
- Clase 8 - Sincronismo, Orden y Cortes: Sincronización entre Procesos. Orden Local y Global. Cortes de Estado.
- Clase 9 - Arquitecturas Distribuidas Simples: Cliente-Servidor, Peer-to-Peer, RPC, Distributed Objects.
- Clase 10 - Message Oriented Middlewares (MOMs): Definición. ZeroMQ. RabbitMQ.
- Clase 11 - Patrones de Comunicación: Request-Reply. Publisher-Subscriber. Pipelines. DAGs.
- Clase 12 - Distribución y Coordinación de Procesos: Coordinación de Actividades. MPI. Apache Beam.
- Clase 13 - Modelado de Computo Distribuido: Implementación y Práctica de MapReduce
- Clase 14 - Data Intensive Applications: Particiones y Replicación. Distributed Shared Memory (DSM). Distributed File Systems (NFS, HDFS). Big Table.
- Clase 15 - Sistemas elásticos y de alta disponibilidad: Técnicas de Diseño. Elasticidad. Disponibilidad.
- Clase 16 - Arquitecturas Orientadas a Servicio y Cloud: Cloud Computing. Platform as a Service (PaaS). AppEngine
- Clase 17 - Diseño de Arquitecturas de Gran Escala: Práctica de Non-Abstract Large-Scale System Design (NALSD)
- Clase 18 - Tolerancia a Fallos: Confiabilidad. Replicación. Consenso. Transacciones distribuidas.
- Clase 19 - Algoritmos de Consenso: Elección de Líder. Consenso. Generales Bizantinos. Paxos.
- Clase 20 - Introducción a Sistemas de Tiempo Real: Sistemas RT. Sistemas de Control.
CLASES VIRTUALES
NORMAS DE ENTREGA DE TRABAJOS PRÁCTICOS:
En todos los casos, se espera del alumno la entrega del trabajo realizado en el siguiente marco:
- Lenguajes canónicos: se aceptarán trabajos programados en golang y/o Python
- Criterios de corrección: se define un listado de consideraciones para la corrección y puntuación de los TPs en el siguiente documento:
- Demostración del sistema: en equipo del alumno o del docente (a convenir), mostrando el sistema en ejecución para el camino feliz y condiciones de borde. Se debe hacer foco en demostrar la respuesta del sistema a distintos volúmenes de procesamiento.
- Entrega digital: Mediante correo personal a los docentes de la cátedra. Incluyendo link al repositorio de código fuente y PDF del informe.
Última modificación: jueves, 24 de agosto de 2023, 14:49