In this blog a comprehensive comparison has been provided to get insights into the so called blue-green deployment method versus the canary one.
While release testing may result in an “all-green”-state and therefore a schedule is being made for a code switch to get the new release version into a production environment there might be a remaining risk which may cause an impact and therefore may lead to an incident where clients get impacted.
All-in-all a code update in a production environment might want to be as foreseeable as possible as well as the lowest risk for users or clients to keep the experience high and non-interrupted.
Canary testing is a software validation technique where new features and functionalities are released to a controlled, limited number of users before a full rollout. Utilizing the Canary approach can help to get potential issues identified early. The small environment can be monitored closely with regards to functionality and performance.
Overall it may help to ensure stability and may enhance an overall quality without significant disruptions.
Conceptual approach
- A code/software driven approach would be preferred. With focus in simplicity the SDKs such as AWS’ CDK can be very powerful to combine a simplified approach with repeatable steps and executions. With an automation through a software driven approach (IaC) a predictable outcome is guaranteed while a hands-on approach may have a higher chance for mistakes during release deployment.
- A good benefit would be to utilize Route53’s balanced weight pools where a dedicated Canary testing subset gets deployed next to the main production environment.
- During the release update/Canary testing the Canary environment gets configured to get assigned to a small subset of users as described above in this blog post.


Leave a comment