0 downtime is hell, so prepare in advance

TL;DR

Quick introduction to what is blue-green deployment with some useful links at the end

Preamble

Some time ago my team lead said me prepare a document about “0 downtime” deployment for developers usage. I knew something about…



TL;DR

Quick introduction to what is blue-green deployment with some useful links at the end



Preamble

Some time ago my team lead said me prepare a document about “0 downtime” deployment for developers usage. I knew something about it and thought that it would be easy task for me, but after some research I understand that it is about an endless rabbit hole. And if you want to implement “0 downtime” deployment you need to be very very cautious and better double-check everything. This post just a warning for you my dear friend.



Blue-green deployment

I will not lie to you. It is the only technique I know, so let’s check its basic idea. Martin Fowler article

Blue-green deployment is an application release model that gradually transfers user traffic from a previous version of an app or microservice to a nearly identical new release—both of which are running in production.

The old version can be called the blue environment while the new version can be known as the green environment. Once production traffic is fully transferred from blue to green, blue can standby in case of rollback.
© RedHat

Sounds pretty easy, but the hardest part of this it is making incompatible changes in compatible way (remember that you try to run previous and current version at the same time). So wherever you have separate layers you need to think about compatibility (client-server, server-database, etc.)

I will not give you any practical advice, because I have only theoretical knowledge about this topic yet. So check more experienced authors by the links below.



Useful materials



Afterword

Hope this post was useful for you guys. Feel free to share any feedback or thoughts.


Print Share Comment Cite Upload Translate
APA
Eduard Romanyuk | Sciencx (2024-03-29T10:55:37+00:00) » 0 downtime is hell, so prepare in advance. Retrieved from https://www.scien.cx/2021/09/18/0-downtime-is-hell-so-prepare-in-advance/.
MLA
" » 0 downtime is hell, so prepare in advance." Eduard Romanyuk | Sciencx - Saturday September 18, 2021, https://www.scien.cx/2021/09/18/0-downtime-is-hell-so-prepare-in-advance/
HARVARD
Eduard Romanyuk | Sciencx Saturday September 18, 2021 » 0 downtime is hell, so prepare in advance., viewed 2024-03-29T10:55:37+00:00,<https://www.scien.cx/2021/09/18/0-downtime-is-hell-so-prepare-in-advance/>
VANCOUVER
Eduard Romanyuk | Sciencx - » 0 downtime is hell, so prepare in advance. [Internet]. [Accessed 2024-03-29T10:55:37+00:00]. Available from: https://www.scien.cx/2021/09/18/0-downtime-is-hell-so-prepare-in-advance/
CHICAGO
" » 0 downtime is hell, so prepare in advance." Eduard Romanyuk | Sciencx - Accessed 2024-03-29T10:55:37+00:00. https://www.scien.cx/2021/09/18/0-downtime-is-hell-so-prepare-in-advance/
IEEE
" » 0 downtime is hell, so prepare in advance." Eduard Romanyuk | Sciencx [Online]. Available: https://www.scien.cx/2021/09/18/0-downtime-is-hell-so-prepare-in-advance/. [Accessed: 2024-03-29T10:55:37+00:00]
rf:citation
» 0 downtime is hell, so prepare in advance | Eduard Romanyuk | Sciencx | https://www.scien.cx/2021/09/18/0-downtime-is-hell-so-prepare-in-advance/ | 2024-03-29T10:55:37+00:00
https://github.com/addpipe/simple-recorderjs-demo