Release strategies - alexanderteplov/computer-science GitHub Wiki
All new system is deployed at once immediately replacing the old system. Challengeable for the testing team and hard to rollback.
Deployment occurs in several stages, starting from the small group of users, e.g. the developers team (the smallest ring), the next ring is wider, e.g. beta society, and so on till all the users would be involved.
Allows to fix bugs on earlier stages affecting less users.
Easily combined with other strategies.
Rolling, step, or phased deployments. In a rolling deployment, an application’s new version gradually replaces the old one.
Also Red-Black or A/B Deployment. In this method, two identical production environments work in parallel. Once the new version has been deployed to the one of the production environments we switch the router/balancer to it.
It's combined blue-green and phased (rolling) deployments. We deploy the new application on small part of the infrastructure and route a small group of users to it.