Getting Started

Learn what a distributed system is and why we need it.

What is a distributed system?

According to Coulouris et al.G. Coulouris, J. Dollimore, T. Kindberg, and G. Blair, Distributed Systems: Concepts and Design (5th Edition). 2011., “A distributed system is a system whose components are located on different networked computers, which communicate and coordinate their actions by passing messages to one another.”

The components of this system can be thought of as software programs that run on physical hardware, such as computers. These components take many forms; e.g., they can be web servers, routers, web browsers, etc. To keep a generic view, we assume that each program runs on a separate machine. We refer to each of these machines as a node.

The above illustration shows that the network either consists of direct connections between the distributed system components, or more components that form the backbone of the network (e.g., if communication is done through the Internet).

While the generic node view is helpful to understand the diagram above, sometimes real-life examples of how the nodes work may ...