You will find this list interesting if you are involved in designing and building large scale web applications. It’s the scalability best practices, written by Randy Shoup from eBay. Each practices is well explained with examples. Here are my favorites:
- Best Practice #2: Split Horizontally
- Best Practice #3: Avoid Distributed Transactions – this is the biggest lesson I have learned at Inktomi – the article also references Eric Brewer’s CAP theorem, which states that of three highly desirable properties of distributed systems – consistency (C), availability (A), and partition-tolerance (P) – you can only choose two at any one time.
- Best Practice #5: Move Processing To Asynchronous Flows
- Best Practice #7: Cache Appropriately – interesting here to see how eBay uses caching, and how Randy boils it down to a constant trade-off.
I was happy and comforted see that those are in-line with the approach of scalability I have. I hope you enjoy the reading as well: Scalability Best Practices: Lessons from eBay