Distribution

Caution: Category is under construction

These patterns solve problems that arise in distributed systems, e.g. problems with finding resources, dealing with network outages, or the low bandwidth of network links. Patterns that deal with parallelism, but not necessarily with distribution, appear in Concurrency .

Protocol Stack

Router

Acceptor and Connector

Gateway

Forwarder/Receiver

Client/Server

Client/Dispatcher/Server

Broker

Purpose: find servers for client requests.

Flexibility: add/remove servers and clients transparently.

Implementation: protocol for registering servers and services, service request protocol.

Recoverable Distributor

Purpose: replicate state in a distributed system, maintain consistency and recoverability.

Flexibility: choose consistency policy, failure handling.

Implementation: global and local state managers, global and local failure handlers, update protocols.

Previous group Next group Back to the top