The Art of Scalability
Michael Fisher, Martin Abbott
The Art of Scalability
Michael Fisher, Martin Abbott
- Producent: Addison Wesley Publishing Company
- Rok produkcji: 2015
- ISBN: 9780134032801
- Ilość stron: 624
- Oprawa: Miękka
Niedostępna
Opis: The Art of Scalability - Michael Fisher, Martin Abbott
The Comprehensive, Proven Approach to IT Scalability-Updated with New Strategies, Technologies, and Case Studies In The Art of Scalability, Second Edition, leading scalability consultants Martin L. Abbott and Michael T. Fisher cover everything you need to know to smoothly scale products and services for any requirement. This extensively revised edition reflects new technologies, strategies, and lessons, as well as new case studies from the authors' pioneering consulting practice, AKF Partners. Writing for technical and nontechnical decision-makers, Abbott and Fisher cover everything that impacts scalability, including architecture, process, people, organization, and technology. Their insights and recommendations reflect more than thirty years of experience at companies ranging from eBay to Visa, and Salesforce.com to Apple. You'll find updated strategies for structuring organizations to maximize agility and scalability, as well as new insights into the cloud (IaaS/PaaS) transition, NoSQL, DevOps, business metrics, and more. Using this guide's tools and advice, you can systematically clear away obstacles to scalability-and achieve unprecedented IT and business performance. Coverage includes * Why scalability problems start with organizations and people, not technology, and what to do about it * Actionable lessons from real successes and failures * Staffing, structuring, and leading the agile, scalable organization * Scaling processes for hyper-growth environments * Architecting scalability: proprietary models for clarifying needs and making choices-including 15 key success principles * Emerging technologies and challenges: data cost, datacenter planning, cloud evolution, and customer-aligned monitoring * Measuring availability, capacity, load, and performance Praise for The Art of Scalability, Second Edition "A how-to manual for building a world-class engineering organization with step-by-step instructions on everything including leadership, architecture, operations, and processes. A driver's manual for going from 0 to 60, scaling your business. With this book published, there's no excuse for mistakes-in other words, RTFM." -Lon F. Binder, vice president, technology, Warby Parker "I've worked with AKF for years on tough technical challenges. Many books address how to correct failing product architectures or problematic processes, both of which are symptoms of an unspoken problem. This book not only covers those symptoms, but also addresses their underlying cause-the way in which we manage, lead, organize, and staff our teams." -Jeremy King, chief technology officer and senior vice president, global ecommerce, Walmart.com "I love this book because it teaches an important lesson most technology-focused books don't: how to build highly scalable and successful technology organizations that build highly scalable technology solutions. There's plenty of great technology coaching in this book, but there are also excellent examples of how to build scalable culture, principles, processes, and decision trees. This book remains one of my few constant go-to reference guides." -Chris Schremser, chief technology officer, ZirMed Praise for the First Edition "This book is much more than you may think it is. Scale is not just about designing Web sites that don't crash when lots of users show up. It is about designing your company so that it doesn't crash when your business needs to grow. These guys have been there on the front lines of some of the most successful Internet companies of our time, and they share the good, the bad, and the ugly about how to not just survive, but thrive." -Marty Cagan, founder, Silicon Valley Product Group "A must read for anyone building a Web service for the mass market." -Dana Stalder, general partner, Matrix Partners "Abbott and Fisher have deep experiences with scale in both large and small enterprises. What's unique about their approach to scalability is they start by focusing on the true foundation: people and process, without which true scalability cannot be built. Abbott and Fisher leverage their years of experience in a very accessible and practical approach to scalability that has been proven over time with their significant success." -Geoffrey Weber, vice president of internet operations/IT, Shutterfly "If I wanted the best diagnoses for my health I would go to the Mayo Clinic. If I wanted the best diagnoses for my portfolio companies' performance and scalability I would call Martin and Michael. They have recommended solutions to performance and scalability issues that have saved some of my companies from a total rewrite of the system." -Warren M. Weiss, general partner, Foundation Capital "As a manager who worked under Michael Fisher and Marty Abbott during my time at PayPal/eBay, the opportunity to directly absorb the lessons and experiences presented in this book are invaluable to me now working at Facebook." -Yishan Wong, former CEO, Reddit, and former director of engineering, Facebook "The Art of Scalability is by far the best book on scalability on the market today. The authors tackle the issues of scalability from processes, to people, to performance, to the highly technical. Whether your organization is just starting out and is defining processes as you go, or you are a mature organization, this is the ideal book to help you deal with scalability issues before, during, or after an incident. Having built several projects, programs, and companies from small to significant scale, I can honestly say I wish I had this book one, five, and ten years ago." -Jeremy Wright, chief executive officer, b5media, Inc. "Only a handful of people in the world have experienced the kind of growth-related challenges that Fisher and Abbott have seen at eBay, PayPal, and the other companies they've helped to build. Fewer still have successfully overcome such challenges. The Art of Scalability provides a great summary of lessons learned while scaling two of the largest internet companies in the history of the space, and it's a must-read for any executive at a hyper-growth company. What's more, it's well-written and highly entertaining. I couldn't put it down." -Kevin Fortuna, partner, AKF Consulting "Marty and Mike's book covers all the bases, from understanding how to build a scalable organization to the processes and technology necessary to run a highly scalable architecture. They have packed in a ton of great practical solutions from real world experiences. This book is a must-read for anyone having difficulty managing the scale of a hyper-growth company or a startup hoping to achieve hyper growth." -Tom Keeven, partner, AKF Consulting "The Art of Scalability is remarkable in its wealth of information and clarity; the authors provide novel, practical, and demystifying approaches to identify, predict, and resolve scalability problems before they surface. Marty Abbott and Michael Fisher use their rich experience and vision, providing unique and groundbreaking tools to assist small and hyper-growth organizations as they maneuver in today's demanding technological environments." -Joseph M. Potenza, attorney, Banner & Witcoff, Ltd.Foreword xxiii Acknowledgments xxvii About the Authors xxix Introduction 1 Part I: Staffing a Scalable Organization 7 Chapter 1: The Impact of People and Leadership on Scalability 9 The Case Method 9 Why People? 10 Why Organizations? 11 Why Management and Leadership? 17 Conclusion 19 Chapter 2: Roles for the Scalable Technology Organization 21 The Effects of Failure 21 Defining Roles 23 Executive Responsibilities 25 Individual Contributor Responsibilities 30 A Tool for Defining Responsibilities 35 Conclusion 39 Chapter 3: Designing Organizations 41 Organizational Influences That Affect Scalability 41 Team Size 44 Organizational Structure 51 Conclusion 69 Chapter 4: Leadership 101 71 What Is Leadership? 72 Leadership: A Conceptual Model 74 Taking Stock of Who You Are 76 Leading from the Front 78 Checking Your Ego at the Door 79 Mission First, People Always 80 Making Timely, Sound, and Morally Correct Decisions 81 Empowering Teams and Scalability 82 Alignment with Shareholder Value 83 Transformational Leadership 84 Vision 84 Mission 87 Goals 89 Putting It All Together 90 The Causal Roadmap to Success 94 Conclusion 95 Chapter 5: Management 101 99 What Is Management? 100 Project and Task Management 102 Building Teams: A Sports Analogy 105 Upgrading Teams: A Garden Analogy 107 Measurement, Metrics, and Goal Evaluation 111 The Goal Tree 114 Paving the Path for Success 115 Conclusion 116 Chapter 6: Relationships, Mindset, and the Business Case 119 Understanding the Experiential Chasm 119 Defeating the IT Mindset 122 The Business Case for Scale 124 Conclusion 127 Part II: Building Processes for Scale 129 Chapter 7: Why Processes Are Critical to Scale 131 The Purpose of Process 132 Right Time, Right Process 135 When Good Processes Go Bad 139 Conclusion 140 Chapter 8: Managing Incidents and Problems 143 What Is an Incident? 144 What Is a Problem? 145 The Components of Incident Management 146 The Components of Problem Management 149 Resolving Conflicts Between Incident and Problem Management 150 Incident and Problem Life Cycles 150 Implementing the Daily Incident Meeting 152 Implementing the Quarterly Incident Review 153 The Postmortem Process 153 Putting It All Together 156 Conclusion 157 Chapter 9: Managing Crises and Escalations 159 What Is a Crisis? 160 Why Differentiate a Crisis from Any Other Incident? 161 How Crises Can Change a Company 162 Order Out of Chaos 163 Communications and Control 168 The War Room 169 Escalations 170 Status Communications 171 Crisis Postmortem and Communication 172 Conclusion 173 Chapter 10: Controlling Change in Production Environments 177 What Is a Change? 178 Change Identification 179 Change Management 180 The Change Control Meeting 191 Continuous Process Improvement 192 Conclusion 193 Chapter 11: Determining Headroom for Applications 197 Purpose of the Process 198 Structure of the Process 199 Ideal Usage Percentage 203 A Quick Example Using Spreadsheets 206 Conclusion 207 Chapter 12: Establishing Architectural Principles 209 Principles and Goals 209 Principle Selection 212 AKF's Most Commonly Adopted Architectural Principles 214 Conclusion 222 Chapter 13: Joint Architecture Design and Architecture Review Board 225 Fixing Organizational Dysfunction 225 Designing for Scale Cross-Functionally 226 JAD Entry and Exit Criteria 228 From JAD to ARB 230 Conducting the Meeting 232 ARB Entry and Exit Criteria 234 Conclusion 236 Chapter 14: Agile Architecture Design 239 Architecture in Agile Organizations 240 Ownership of Architecture 241 Limited Resources 242 Standards 243 ARB in the Agile Organization 246 Conclusion 247 Chapter 15: Focus on Core Competencies: Build Versus Buy 249 Building Versus Buying, and Scalability 249 Focusing on Cost 250 Focusing on Strategy 251 "Not Built Here" Phenomenon 252 Merging Cost and Strategy 252 Does This Component Create Strategic Competitive Differentiation? 253 Are We the Best Owners of This Component or Asset? 253 What Is the Competition for This Component? 254 Can We Build This Component Cost-Effectively? 254 The Best Buy Decision Ever 255 Anatomy of a Build-It-Yourself Failure 256 Conclusion 258 Chapter 16: Determining Risk 259 Importance of Risk Management to Scale 259 Measuring Risk 261 Managing Risk 268 Conclusion 271 Chapter 17: Performance and Stress Testing 273 Performing Performance Testing 273 Don't Stress over Stress Testing 281 Performance and Stress Testing for Scalability 287 Conclusion 288 Chapter 18: Barrier Conditions and Rollback 291 Barrier Conditions 291 Rollback Capabilities 297 Markdown Functionality: Design to Be Disabled 300 Conclusion 301 Chapter 19: Fast or Right? 303 Tradeoffs in Business 303 Relation to Scalability 306 How to Think About the Decision 307 Conclusion 311 Part III: Architecting Scalable Solutions 315 Chapter 20: Designing for Any Technology 317 An Implementation Is Not an Architecture 317 Technology-Agnostic Design 318 The TAD Approach 323 Conclusion 325 Chapter 21: Creating Fault-Isolative Architectural Structures 327 Fault-Isolative Architecture Terms 327 Benefits of Fault Isolation 329 How to Approach Fault Isolation 336 When to Implement Fault Isolation 339 How to Test Fault-Isolative Designs 341 Conclusion 341 Chapter 22: Introduction to the AKF Scale Cube 343 The AKF Scale Cube 343 The x-Axis of the Cube 344 The y-Axis of the Cube 346 The z-Axis of the Cube 349 Putting It All Together 350 When and Where to Use the Cube 352 Conclusion 353 Chapter 23: Splitting Applications for Scale 357 The AKF Scale Cube for Applications 357 The x-Axis of the AKF Application Scale Cube 359 The y-Axis of the AKF Application Scale Cube 361 The z-Axis of the AKF Application Scale Cube 363 Putting It All Together 365 Practical Use of the Application Cube 367 Conclusion 371 Chapter 24: Splitting Databases for Scale 375 Applying the AKF Scale Cube to Databases 375 The x-Axis of the AKF Database Scale Cube 376 The y-Axis of the AKF Database Scale Cube 381 The z-Axis of the AKF Database Scale Cube 383 Putting It All Together 385 Practical Use of the Database Cube 388 Conclusion 393 Chapter 25: Caching for Performance and Scale 395 Caching Defined 395 Object Caches 399 Application Caches 402 Content Delivery Networks 407 Conclusion 408 Chapter 26: Asynchronous Design for Scale 411 Synching Up on Synchronization 411 Synchronous Versus Asynchronous Calls 412 Defining State 418 Conclusion 422 Part IV: Solving Other Issues and Challenges 425 Chapter 27: Too Much Data 427 The Cost of Data 427 The Value of Data and the Cost-Value Dilemma 430 Making Data Profitable 431 Handling Large Amounts of Data 434 Conclusion 444 Chapter 28: Grid Computing 447 History of Grid Computing 447 Pros and Cons of Grids 449 Different Uses for Grid Computing 454 Conclusion 457 Chapter 29: Soaring in the Clouds 459 History and Definitions 460 Characteristics and Architecture of Clouds 463 Differences Between Clouds and Grids 467 Pros and Cons of Cloud Computing 468 Where Clouds Fit in Different Companies 476 Decision Process 478 Conclusion 481 Chapter 30: Making Applications Cloud Ready 485 The Scale Cube in a Cloud 485 Overcoming Challenges 487 Intuit Case Study 491 Conclusion 493 Chapter 31: Monitoring Applications 495 "Why Didn't We Catch That Earlier?" 495 A Framework for Monitoring 496 Measuring Monitoring: What Is and Isn't Valuable? 503 Monitoring and Processes 504 Conclusion 506 Chapter 32: Planning Data Centers 509 Data Center Costs and Constraints 509 Location, Location, Location 511 Data Centers and Incremental Growth 514 When Do I Consider IaaS? 516 Three Magic Rules of Three 519 Multiple Active Data Center Considerations 525 Conclusion 527 Chapter 33: Putting It All Together 531 What to Do Now? 532 Further Resources on Scalability 535 Part V: Appendices 537 Appendix A: Calculating Availability 539 Hardware Uptime 540 Customer Complaints 541 Portion of Site Down 542 Third-Party Monitoring Service 543 Business Graph 544 Appendix B: Capacity Planning Calculations 547 Appendix C: Load and Performance Calculations 555 Index 563
Szczegóły: The Art of Scalability - Michael Fisher, Martin Abbott
Tytuł: The Art of Scalability
Autor: Michael Fisher, Martin Abbott
Producent: Addison Wesley Publishing Company
ISBN: 9780134032801
Rok produkcji: 2015
Ilość stron: 624
Oprawa: Miękka
Waga: 0.8 kg