Note to myself: Principles of Distributed System Design

These design principles used by Amazon to meet Amazon S3 requirements are pure gold: simple yet powerful. • Decentralization. Use fully decentralized techniques to remove scaling bottlenecks and single points of failure. • Asynchrony. The system makes progress under all circumstances. • Autonomy. The system is designed such that individual components can make decisions based […]