logo hsb.horse
← Voltar para o índice do glossário

Glossário

Drain

Drain é um procedimento de transição ou parada que interrompe novos requests ou novos jobs enquanto termina com segurança apenas o que já está em andamento.

Publicado: Atualizado:

Drain é um procedimento operacional usado ao parar ou retirar um servidor ou worker. Ele deixa de aceitar trabalho novo e permite que apenas o processamento já em andamento termine.

Em um servidor HTTP, drain significa bloquear a entrada de novos requests e depois aguardar conexões existentes ou in-flight requests. Em Kubernetes, o termo aparece com frequência no fluxo em que readiness é derrubado para tirar a instância dos endpoints antes de seguir para o graceful shutdown.

Casos de uso comuns

  • Logo antes de reiniciar um servidor ou fazer rolling update
  • Antes de parar um queue worker
  • Ao remover um nó atrás de um load balancer

Observações

Drain não é uma parada imediata. É uma etapa para sair sem bagunçar o trabalho já em execução. O objetivo é diferente de um encerramento forçado.