Boa tarde, galera!
Aposto que muitos de vocês utilizam Spring Boot no dia-a-dia. Vocês sabiam que ele tem uma deficiência quando se trata de alta disponibilidade? Vou explicar.
Quando você prepara uma nova atualização e derruba uma instância, por padrão o
Spring Boot não aguarda a conclusão das requisições pendentes (processo conhecido como
graceful shutdown). Existe
um chamado aberto desde 2015, mas até hoje a equipe encontra dificuldades para solucioná-lo.
Embora a solução oficial ainda não exista, muitos comentários relevantes foram trocados nesse
chamado, Eu testei vários deles com sucesso e resolvi compartilhar essa
solução no github. Basta acrescentar uma única dependência no seu projeto (eu espero que vocês estejam
utilizando Undertow) para que esse problema desapareça.
Fica a dica. Feedback é sempre bem-vindo.
Abraço a todos,
Eduardo Rebola