Skip to content

Instantly share code, notes, and snippets.

@isweluiz
Created March 23, 2022 20:52
Show Gist options
  • Select an option

  • Save isweluiz/3440b92a5492e18fdb6b026761740716 to your computer and use it in GitHub Desktop.

Select an option

Save isweluiz/3440b92a5492e18fdb6b026761740716 to your computer and use it in GitHub Desktop.

"A canary deployment, or canary release, is a deployment pattern that allows you to roll out new code/features to a subset of users as an initial test."

"Canary deployments are a pattern for rolling out releases to a subset of users or servers. The idea is to first deploy the change to a small subset of servers, test it, and then roll the change out to the rest of the servers. The canary deployment serves as an early warning indicator with less impact on downtime: if the canary deployment fails, the rest of the servers aren't impacted."

"Canary deployments can help you put your best code into production as efficiently as possible."

"Canary release is a technique to reduce the risk of introducing a new software version in production by slowly rolling out the change to a small subset of users before rolling it out to the entire infrastructure and making it available to everybody."

"Testing out a new feature or upgrade in production is a stressful process. You want to roll out changes frequently but without affecting the user experience. To minimize downtime during this phase, set up canary deployments to streamline the transition."

"A canary deployment is an upgraded version of an existing deployment, with all the required application code and dependencies. It is used to test out new features and upgrades to see how they handle the production environment."

Why Canary Deployment?

"Canary deployment benefits include zero downtime, easy rollout and quick rollback – plus the added safety from the gradual rollout process. It also has some drawbacks – the expense of maintaining multiple server instances, the difficult clone-or-don’t-clone database decision."

More:

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment