13 Scalability Best Practices
Tuesday, August 11, 2009 at 1:43PM
Todd Hoff in Strategy

AFK Partners has release what they feel are the Best Practices for Scalability:

  1. Asynchronous - Use asynchronous communication when possible. 
  2. Swim Lanes – Create fault isolated “swim lanes” of hardware by customer segmentation.
  3. Cache - Make use of cache at multiple layers.
  4. Monitoring - Understand your application’s performance from a customer’s perspective. 
  5. Replication - Replicate databases for recovery as well as to off load reads to multiple instances.
  6. Sharding - Split the application and databases by service and / or by customer using a modulus. 
  7. Use Few RDBMS Features – Use the OLTP database as a persistent storage device as much as possible. 
  8. Slow Roll – Roll out new code versions slowly, to a small subset of your servers without bringing the entire site down.
  9. Load & Performance Testing – Test the performance of the application version before it goes into production. 
  10. Capacity Planning / Scalability Summits – Know how much capacity you have on all tiers and services in your system. 
  11. Rollback – Always have the ability to rollback a code release.
  12. Root Cause Analysis - Ensure you have a learning culture that is evident by utilizing Root Cause Analysis to find and fix the real cause of issues.
  13. Quality From The Beginning – Quality can’t be tested into a product, it must be designed in from the beginning.
This is just a quick summary, more details on their site.

Article originally appeared on (http://highscalability.com/).
See website for complete article licensing information.