Patterns of Architecture

June 12, 2012
Patterns of Architecture 1

Srinath Perera has put together a strong list of architecture patterns based on three meta patterns: distribution, caching, and asynchronous processing. He contends these three are the primal patterns and the following patterns are but different combinations:

  1. LB (Load Balancers) + Shared nothing Units. Units that do not share anything with each other fronted with a load balancer that routes incoming messages to a unit based on some criteria.
  2. LB + Stateless Nodes + Scalable Storage. Several stateless nodes talking to a scalable storage, and a load balancer distributes load among the nodes.
  3. Peer to Peer Architectures (Distributed Hash Table (DHT) and Content Addressable Networks (CAN)). Algorithm for scaling up logarithmically.
  4. Distributed Queues. Queue implementation (FIFO delivery) implemented as a network service.
  5. Publish/Subscribe Paradigm. Network publish subscribe brokers that route messages to each other.
  6. Gossip and Nature-inspired Architectures. Each node randomly pick and exchange information with follow nodes.
  7. Map Reduce/ Data flows. Scalable pattern to describe and execute Jobs.
  8. Tree of responsibility. Break the problem down recursively and assign to a tree, each parent node delegating work to children nodes.
  9. Stream processing. Process data streams, data that is keeps coming.
  10. Scalable Storages. Ranges from Databases, NoSQL storages, Service Registries, to File systems.
Source: highscalability.com
RELATED VIDEO
Patterns of Enterprise Application Architecture (The
Patterns of Enterprise Application Architecture (The ...
Software Architecture Anti-Patterns by Eduards Sizovs
Software Architecture Anti-Patterns by Eduards Sizovs
The Architecture of Ecological Interactions: Patterns and
The Architecture of Ecological Interactions: Patterns and ...
RELATED FACTS
Share this Post