What is canary release?
A canary release is a technique used to deploy a new software or code changes to a small subset of users or systems (called a canary group) before rolling it out to the entire user base.
The term “canary release” comes from the miners’ practice of bringing canaries into mines to detect toxic gasses. If the canary died, it was a sign that the air quality was poor and the miners needed to evacuate.
In the context of software development, a canary release allows a new version to be tested in a controlled environment and its performance, stability, and other key metrics to be monitored before it is made widely available. If the canary deployment goes well, the new version can be rolled out to the remaining users. However, if there are issues or problems, the team can fix them before deploying the new version to the entire user base.
This ensures that the changes are stable and do not cause problems for users.
Canary deployment strategy is often used in conjunction with other techniques such as A/B testing and blue-green deployment to minimize the risk of problems with new code releases.