Separate Instance Deployment Strategy

Example of Separate Instance Deployment Strategy

Question

A new version of an application is being released by creating a separate instance of the application that is running the new code.

Only a small portion of the user base will be directed to the new instance until that version has been proven stable.

Which deployment strategy is this example of?

Answers

Explanations

Click on the arrows to vote for the correct answer

A. B. C. D.

D.

The deployment strategy being described in this example is the Canary Deployment strategy.

Canary deployment is a technique used in software deployment that allows a new version of an application to be tested in a live production environment with a small set of users before it is released to the wider audience. The new version of the application is deployed alongside the existing version, and only a small percentage of users are directed to the new version while the remaining users continue to use the old version.

This approach allows the development team to monitor and test the new version in a live production environment, and to quickly identify and address any issues or bugs that may arise. It also reduces the risk of a major outage affecting the entire user base if something goes wrong with the new version.

Once the new version has been tested and deemed stable, the remaining users can be directed to the new version, and the old version can be decommissioned.

In contrast, the other deployment strategies listed in the answer choices are:

  • Recreate Deployment: In this strategy, the old version of the application is completely removed, and a new instance of the application is created with the new version. This can be a risky strategy as it can cause downtime during the deployment process, and it may not be easy to rollback to the old version if something goes wrong.
  • Blue/Green Deployment: In this strategy, two identical instances of the application are deployed - one running the old version and one running the new version. Traffic is directed to one instance at a time, and once the new version has been tested and deemed stable, all traffic is redirected to the new instance. This approach minimizes downtime and allows for easy rollback if necessary.
  • Rolling Deployment: In this strategy, the new version of the application is deployed gradually to small subsets of users, and each deployment is tested before moving on to the next group of users. This approach minimizes risk and allows for a controlled rollout of the new version.