O que é um Canary Release?
É uma estratégia de deployment usada para minimizar riscos.
Definição
Um Canary Release é uma estratégia de deployment usada no desenvolvimento de software para reduzir o risco de introduzir uma nova versão, inicialmente disponibilizando-a para um pequeno subconjunto de usuários.
Origem
O nome origina dos mineiros que levavam um canário em uma gaiola para as minas de carvão. Se gases tóxicos vazassem na mina, o canário morreria antes dos mineiros.
Monitoramento
O sistema é cuidadosamente monitorado para problemas, e se a nova versão se comportar bem, é gradualmente liberada para mais usuários.
Rollback
Se problemas são detectados, o release pode ser revertido, e a versão antiga reinstalada para todos os usuários.
Seleção
Estratégias diferentes são usadas para selecionar quais usuários serão expostos à nova versão, como amostragem aleatória ou seleção baseada em demografia.