Scalable System Design

Load Balancing

Smart Clients

Hardware Load Balancers

Software Load Balancers (HAProxy)

Caching

Application Versus Database Caching

In Memory Caches (Memcached, Redis)

Content Distribution Networks

Cache Invalidation

Off-Line Processing

Message Queues

Scheduling Periodic Tasks

Map-Reduce

下記はScalable System Design Patternsを参照

Load Balancer

Scatter and Gather

Result Cache

Shared Space(Blackboard)

Pipe and Filter(Data Flow)

Map Reduce

Parellel I/O

Bulk Synchronous Parellel

Execution Orchestrator