Shadow deployment & testing

What is shadow deployment?

This deployment consists of deployment of the new version of the software alongside the old version and then duplicate/fork the old versions requests and send them the new version without impacting the traffic in production system.

Why use shadow deployment?

  1. It’s a very useful method to test the production load on the new software version and then migrate completely to the new version if the thresholds are met

When to use shadow deployment?

  1. Whenever you have a lot of apis in a service and there is a new update where load is to be tested
  2. Whenever you are migrating to newer frameworks/libraries

When to avoid shadow deployment?

When there are request sensitive apis like order and payment, there should be exceptional care taken to prevent the user from making the transaction twice due to duplicate requests.

How does shadow deployment work?

Let’s understand with an image:

Leave a Comment

Your email address will not be published. Required fields are marked *