Principles of Distributed Software
E0 209, January-April 2025
Komondoor V. Raghavan
Distributed computing
What is distributed computing?
Why distributed computing
Contrast with high-performance computing: single powerful node (multi core), or closely-coupled cluster/grid of nodes with almost no delay in communication.
Example domains where distributed computing is used
Note
Cloud computing
Very brief history of cloud computing
Focus of this course
Core content: Concepts, technologies, and frameworks, for developing and deploying distributed applications.
We will focus primarily on techniques useful for database-oriented enterprise applications (e.g., e-commerce, travel booking, social media, banking, etc.)
Topics we will cover:
Focus of this course - II
Course workload
A necessary condition to obtain a passing grade: Minimum 35% marks in weighted sum of midsem and final marks
Misconduct policy
Pre-requisites
Acknowledgment
Course contents designed with inputs from
Dr. Prasad Deshpande
Senior Staff Software Engineer, Databricks, and ACM Distinguished Scientist