small medium large xlarge

Release It! Second Edition: Design and Deploy Production-Ready Software


Cover image for Release It! Second Edition

Release It! Second Edition

Design and Deploy Production-Ready Software


A single dramatic software failure can cost a company millions of dollars—but can be avoided with simple changes to design and architecture. This new edition of the best-selling industry standard shows you how to create systems that run longer, with fewer failures, and recover better when bad things happen. New coverage includes DevOps, microservices, and cloud-native architecture. Stability antipatterns have grown to include systemic problems in large-scale systems. This is a must-have pragmatic guide to engineering for production systems.

Choose Your Format(s)

  • $25.95 In Stock
    • Beta: What do I get?

  • Ebooks are DRM free.

  • Ebook delivery options.

  • The Paper Book will ship on 2018-01-05 (roughly).

About this Title

Pages: 350 (est)
Published: 2018-01-01
Release: B5.0 (2017-11-18)
ISBN: 978-1-68050-239-8

If you’re a software developer, and you don’t want to get alerts every night for the rest of your life, help is here. With a combination of case studies about huge losses—lost revenue, lost reputation, lost time, lost opportunity—and practical, down-to-earth advice that was all gained through painful experience, this book helps you avoid the pitfalls that cost companies millions of dollars in downtime and reputation. Eighty percent of project life-cycle cost is in production, yet few books address this topic.

This updated edition deals with the production of today’s systems—larger, more complex, and heavily virtualized—and includes information on chaos engineering, the discipline of applying randomness and deliberate stress to reveal systematic problems. Build systems that survive the real world, avoid downtime, implement zero-downtime upgrades and continuous delivery, and make cloud-native applications resilient. Examine ways to architect, design, and build software—particularly distributed systems—that stands up to the typhoon winds of a flash mob, a Slashdotting, or a link on Reddit. Take a hard look at software that failed the test and find ways to make sure your software survives.

To skip the pain and get the experience…get this book.

What You Need

No requirements.

Contents & Extracts

This book is currently in beta, so the contents and extracts will change as the book is developed.

  • Introduction excerpt
  • Create Stability
    • Case Study: The Exception That Grounded An Airline
      • The Outage
      • Consequences
      • Post-Mortem
      • The Smoking Gun
      • An Ounce of Prevention?
    • Stabilize Your System
      • Defining Stability
      • Extending Your Life Span
      • Failure Modes
      • Cracks Propagate
      • Chain of Failure
      • Wrapping Up
    • Stability Antipatterns excerpt
      • Integration Points
      • Chain Reactions
      • Cascading Failures
      • Users
      • Blocked Threads
      • Self-Denial Attacks
      • Scaling Effects
      • Unbalanced Capacities
      • Dogpile
      • Force Multiplier
      • Slow Responses
      • Unbounded Result Sets
      • Wrapping Up
    • Stability Patterns
      • Timeouts
      • Circuit Breaker
      • Bulkheads
      • Steady State
      • Fail Fast
      • Let It Crash
      • Handshaking
      • Test Harness
      • Decoupling Middleware
      • Shed Load
      • Create Backpressure
      • Governor
      • Wrapping Up
  • Design for Production
    • Case Study: Phenomenal Cosmic Powers, Itty-Bitty Living Space
      • Baby’s First Christmas
      • Taking the Pulse
      • Thanksgiving Day
      • Black Friday
      • Vital Signs
      • Diagnostic Tests
      • Call in a Specialist
      • Compare Treatment Options
      • Does the Condition Respond to Treatment?
      • Winding Down
    • Foundations
      • Networking in the Data Center and the Cloud
      • Physical Hosts, Virtual Machines, and Containers excerpt
      • Wrapping Up
    • Processes on Machines
      • Code
      • Configuration
      • Transparency
      • Wrapping Up
    • Interconnect
      • Solutions at Different Scales
      • DNS
      • Load Balancing
      • Demand Control
      • Network Routing
      • Discovering Services
      • Migratory Virtual IP Addresses
      • Wrapping Up
    • Control Plane
      • How Much Is Right For You?
      • Mechanical Advantage
      • Platform and Ecosystem
      • Development Is Production
      • System-Wide Transparency
      • Configuration Services
      • Provisioning and Deployment Services
      • Command and Control
      • The Platform Players
      • The Shopping List
      • Wrapping Up
    • Security
      • The OWASP Top Ten
      • The Principle of Least Privilege excerpt
      • Configured Passwords
      • Security as an Ongoing Process
      • Wrapping Up
  • Deliver Your System
    • Case Study: Waiting for Godot
  • Solve Systemic Problems
    • Case Study: Trampled by Your Own Customers
      • Countdown and Launch
      • Aiming for Quality Assurance
      • Load Testing
      • Murder By the Masses
      • The Testing Gap
      • Aftermath


Michael Nygard has been a professional programmer and architect for more than 15 years. He has delivered running systems to the U.S. government and to the banking, finance, agriculture, and retail industries. Michael is a popular speaker at technical conferences, and has written and co-authored several books, including 97 Things Every Software Architect Should Know and the best-selling first edition of this book.