Top 10 patterns to design high scalability, high performace applications
10. Understand the Problem
9. Define the Requirements
8. Architecture trumps technology
7. Understand the Basics
6. Visualize the Network
5. Visualize the Design
4. Plan for Overload; Partition for Scalability
3. Plan for Failure; Replicate for Availability
2. Tier where it makes sense
... ...
1. Simplify