Now extensively updated for new technologies and best practices, Scalability Rules, Second Edition is the definitive, easy-to-use scalability primer and reference for every architect, developer, web professional, and manager.
Authors Martin L. Abbott and Michael T. Fisher have helped scale hundreds of hypergrowth Internet sites through their consulting practice. Drawing on their unsurpassed experience, they present 50 clear, proven, and up-to-date scalability rules--and practical guidance for applying them. Abbott and Fisher transform scalability from a "black art" to a set of realistic, technology-agnostic best practices for supporting hypergrowth in nearly any environment.
In this new edition, they add many new examples, plus CTO case studies from many exceptionally demanding sites -- including Etsy, NASDAQ, Salesforce, Shutterfly, Chegg, Warby Parker, and Twitter.
All 50 rules are organized thematically, for easy usage and greater insight. Most are technical, but some address mindsets or process concerns that are critical to scalability. Brand-new coverage in this edition includes:
Refactoring to simplify code for better scalability Distributing work with the AKF Scale Cube Scaling horizontally by replacing expensive hardware with commodity equipment Improving scalability by leveraging both data centers and clouds Avoiding PaaS lock-in Analyzing log files with the ELK stack Relaxing temporal constraints Using caching more aggressively Promoting continuous deployment Enabling rollbacks more easily Understanding the scaling characteristics of diverse SQL and NoSQL solutions Using PODs and swim lanes Removing or distributing state, and much more
For architects, this guide offers powerful new insights for creating and evaluating designs. For developers, it shares specific techniques for handling everything from databases to state. For managers, it offers invaluable help in goal-setting, decision-making, and interacting with technical teams. Whatever your role, you’ll find practical guidance for assessing risks and benefits, setting priorities, and getting maximum "bang for your buck."