Skip to content
Tech

Por que minha migração de schema é executada antes de verificar se os serviços implantados sobrevivem a ela?

83

Oportunidade

Quando você envia uma alteração de schema para um banco de dados em produção, a migração é executada antes que qualquer ferramenta verifique se as versões de serviço atualmente em execução conseguem ler e escrever no novo formato. Uma coluna removida ou um campo renomeado chega ao banco de dados antes que os pods antigos terminem de drenar, e o rollback restaura o schema, mas não os dados gravados pela nova versão no intervalo. Ferramentas ORM geram SQL a partir de diffs, mas não modelam nada sobre topologia de implantação, versões de serviço concorrentes ou padrões de leitura e escrita em tempo real. As equipes compensam com rituais de expand-contract documentados em wikis e conhecimento tácito, sem nenhuma aplicação por ferramentas. Uma única etapa fora de ordem provocou falhas em cascata em múltiplos serviços e um incidente documentado de US$ 4,5 milhões no último ano.

Por que importa

Uma verificação de compatibilidade pré-implantação que modela a topologia do seu serviço em produção transformaria o passo mais arriscado de um deploy em algo sobre o qual você pode raciocinar antes de clicar em aplicar.

Como avalio a oportunidade

A Pontuação de Oportunidade é minha própria leitura, não uma medição: o quanto dói, com que frequência aparece e o quanto pouco existe para resolvê-lo hoje. Quanto maior, mais vale a pena construir, na minha opinião.

Gravidade9/10

O quanto de dor causa quando aparece.

Frequência8/10

Com que frequência as pessoas realmente se deparam com isso.

Lacuna7/10

O quanto pouco de boas ferramentas existe para isso hoje.

Mais problemas que merecem ser resolvidos