COMP SCI 446: Distributed Computing Systems
Course Description
This course will teach students the fundamentals of distributed computing systems that are the building blocks of large-scale software systems, such as cloud computing, search engines, and social networking platforms. The course will cover the following four groups of topics: distributed computing basics (e.g., system model, inter-process communication, messaging and remote invocations), distributed algorithms (e.g., time synchronization, distributed coordination algorithms, consensus), distributed services (e.g., distributed file systems, group communication, replication), and distributed systems (e.g., peer-to-peer systems, publish-subscribe systems).