Distributed computing

(a), (b): a distributed system. (c): a parallel system.

Field of computer science that studies distributed systems.

- Distributed computing

500 related topics


Client–server model

A computer network diagram of clients communicating with a server via the Internet

Client-server model is a distributed application structure that partitions tasks or workloads between the providers of a resource or service, called servers, and service requesters, called clients.

Message-oriented middleware

(a), (b): a distributed system. (c): a parallel system.

Message-oriented middleware (MOM) is software or hardware infrastructure supporting sending and receiving messages between distributed systems.

Computer cluster

Set of computers that work together so that they can be viewed as a single system.

Technicians working on a large Linux cluster at the Chemnitz University of Technology, Germany
Sun Microsystems Solaris Cluster, with In-Row cooling
Taiwania series uses cluster architecture, with great capacity, helped scientists of Taiwan and many others during COVID-19
A simple, home-built Beowulf cluster.
A VAX 11/780, c. 1977
A load balancing cluster with two servers and N user stations.
A typical Beowulf configuration.
A NEC Nehalem cluster
Low-cost and low energy tiny-cluster of Cubieboards, using Apache Hadoop on Lubuntu
A pre-release sample of the Ground Electronics/AB Open Circumference C25 cluster computer system, fitted with 8x Raspberry Pi 3 Model B+ and 1x UDOO x86 boards.

Computer clusters emerged as a result of convergence of a number of computing trends including the availability of low-cost microprocessors, high-speed networks, and software for high-performance distributed computing.

Inter-process communication

Operating system provides to allow the processes to manage shared data.

A grid computing system that connects many personal computers over the Internet via inter-process network communication

Many applications are both clients and servers, as commonly seen in distributed computing.

Node (networking)

Either a redistribution point or a communication endpoint.


If the network in question is a distributed system, the nodes are clients, servers or peers.


Organized collection of data stored and accessed electronically.

An SQL select statement and its result
Basic structure of navigational CODASYL database model
In the relational model, records are "linked" using virtual keys not stored in the database but defined as needed between the data contained in the records.
Collage of five types of database models
Traditional view of data

The design of databases spans formal techniques and practical considerations including data modeling, efficient data representation and storage, query languages, security and privacy of sensitive data, and distributed computing issues including supporting concurrent access and fault tolerance.

Operating system

System software that manages computer hardware, software resources, and provides common services for computer programs.

OS/360 was used on most IBM mainframe computers beginning in 1966, including computers used by the Apollo program.
PC DOS was an early personal computer OS that featured a command-line interface.
Mac OS by Apple Computer became the first widespread OS to feature a graphical user interface. Many of its features such as windows and icons would later become commonplace in GUIs.
The first server for the World Wide Web ran on NeXTSTEP, based on BSD.
Ubuntu, desktop Linux distribution
Linux, a unix-like operating system was first time released on September 17, 1991, by Linus Torvalds. Picture of Tux the penguin, mascot of Linux.
A kernel connects the application software to the hardware of a computer.
Privilege rings for the x86 microprocessor architecture available in protected mode. Operating systems determine which processes run in each mode.
Many operating systems can "trick" programs into using memory scattered around the hard disk and RAM as if it is one continuous chunk of memory, called virtual memory.
File systems allow users and programs to organize and sort files on a computer, often through the use of directories (or "folders").
A screenshot of the Bash command line. Each command is typed out after the 'prompt', and then its output appears below, working its way down the screen. The current command prompt is at the bottom.
A screenshot of the KDE Plasma 5 graphical user interface. Programs take the form of images on the screen, and the files, folders (directories), and applications take the form of icons and symbols. A mouse is used to navigate the computer.

A distributed operating system manages a group of distinct, networked computers and makes them appear to be a single computer, as all computations are distributed (divided amongst the constituent computers).


For other uses, see Peer-to-peer (disambiguation).

A peer-to-peer (P2P) network in which interconnected nodes ("peers") share resources amongst each other without the use of a centralized administrative system
A network based on the client–server model, where individual clients request services and resources from centralized servers
SETI@home was established in 1999
Overlay network diagram for an unstructured P2P network, illustrating the ad hoc nature of the connections between nodes
Overlay network diagram for a structured P2P network, using a distributed hash table (DHT) to identify and locate nodes/resources
Distributed hash tables
Search results for the query "software libre", using YaCy a free distributed search engine that runs on a peer-to-peer network instead making requests to centralized index servers (like Google, Yahoo, and other corporate search engines)
Torrent file connect peers
The BitTorrent protocol: In this animation, the colored bars beneath all of the 7 clients in the upper region above represent the file being shared, with each color representing an individual piece of the file. After the initial pieces transfer from the seed (large system at the bottom), the pieces are individually transferred from client to client. The original seeder only needs to send out one copy of the file for all the clients to receive a copy.

Peer-to-peer (P2P) computing or networking is a distributed application architecture that partitions tasks or workloads between peers.

Remote procedure call

(a), (b): a distributed system. (c): a parallel system.

In distributed computing, a remote procedure call (RPC) is when a computer program causes a procedure (subroutine) to execute in a different address space (commonly on another computer on a shared network), which is coded as if it were a normal (local) procedure call, without the programmer explicitly coding the details for the remote interaction.

Distributed algorithm

Algorithm designed to run on computer hardware constructed from interconnected processors.

Flowchart of an algorithm (Euclid's algorithm) for calculating the greatest common divisor (g.c.d.) of two numbers a and b in locations named A and B. The algorithm proceeds by successive subtractions in two loops: IF the test B ≥ A yields "yes" or "true" (more accurately, the number b in location B is greater than or equal to the number a in location A) THEN, the algorithm specifies B ← B − A (meaning the number b − a replaces the old b). Similarly, IF A > B, THEN A ← A − B. The process terminates when (the contents of) B is 0, yielding the g.c.d. in A. (Algorithm derived from Scott 2009:13; symbols and drawing style from Tausworthe 1977).

Distributed algorithms are used in different application areas of distributed computing, such as telecommunications, scientific computing, distributed information processing, and real-time process control.