Deployment Strategy Comparison
| Strategy | Downtime | Extra capacity | Two versions at once | Blast radius | Rollback |
|---|---|---|---|---|---|
| Recreate | Yes, during the switch | None | No | Everyone | Redeploy the old version, with more downtime |
| Rolling | None, with surge capacity | A small surge | Yes, during the rollout | Grows batch by batch | Roll the old version out again |
| Blue-green | None when requests drain and the switch is at the load balancer | A full second environment during the release | Briefly at the switch, and both share the database throughout | Everyone, at the switch | Switch back, fast, if the data allows it |
| Canary | None | From the canary instances up to a full second copy, depending on the platform | Yes, during the release | A chosen share, widened in steps | Send traffic back to the stable version |
Feature flags combine with any strategy, separating when code is deployed from when users see it. A/B tests split users to measure a business outcome, which makes them experiments rather than a way to roll out a release.
Found this useful? Share it:
Share on LinkedIn