BlueGreenDeployment
“There are many ways to provide for failover and clustered services. One very specific way to achieve high availability that allows for leap-frog releases cycles is blue-green deployments. The idea is to have a mirrored setup where release code runs one one environment and pre-release code runs on the other. This creates an environment that provides rollback, reliability, failover and a host of other capabilities.”
“Blue-green deployment allows you to upgrade production software without downtime. You deploy the new version into a copy of the production environment and change routing to switch.”
Source: BlueGreenDeployment