Chapter 1: Reliable, Scalable and Maintainable Systems
- Common wisdom is to keep the database on a single node (scaling up) until cost or high availability requirements force you to make it distributed.
- Maintainability: Take care of three things during design:
- Operability: Make it easy for operations teams to keep the system running.
- Simplicity: Should be easy to understand the system.
- Evolvability: Should be easy to make changes to the system.