O Que É um Endpoint de Health Check? Provando Que um Serviço Está Pronto
Um endpoint de health check é uma URL que um serviço expõe, frequentemente em /health, que retorna um sinal rápido de se o serviço está vivo e pronto para aceitar tráfego.
A infraestrutura precisa de uma forma simples de perguntar a um serviço "você está bem?". Um endpoint de health check responde a isso com uma resposta rápida que load balancers e orquestradores consultam. Deploys condicionam o cutover a essas verificações: o tráfego migra para uma nova versão apenas quando seu endpoint de health informa que está pronto.
Um sinal de prontidão simples
O endpoint retorna 200 quando saudável e um status de erro caso contrário. Ele deve ser barato e rápido, verificando apenas o suficiente para confirmar que o serviço pode servir requisições.
Liveness versus readiness
- Liveness: o processo está vivo, ou deveria ser reiniciado?
- Readiness: ele pode servir tráfego agora?
- Startup: ele já terminou de inicializar?
Quem o consulta
Load balancers consultam para decidir o roteamento, e orquestradores como o Kubernetes consultam para decidir reinícios e tráfego. Um backend que falha em sua verificação é removido do rodízio automaticamente.
Health checks em deploys
Um deploy seguro aguarda que novas instâncias passem em seus health checks antes de migrar o tráfego e drenar as antigas. É isso que torna deploys rolling e blue-green sem downtime.
Smoke checks de CI
Após o deploy, um pipeline frequentemente acessa o endpoint de health para confirmar que o release está no ar antes de marcar o deploy como bem-sucedido. Um não-200 ali faz a etapa de deploy falhar cedo.
Transitório durante o aquecimento
Logo após um deploy, um endpoint de health pode retornar brevemente não-200 enquanto o serviço aquece. Os runners da Latchkey fazem retry de falhas de health check transitórias durante a verificação, para que um aquecimento lento não faça um deploy falhar falsamente.
Principais conclusões
- Um endpoint de health check informa se um serviço está vivo e pronto para servir.
- Load balancers e orquestradores o consultam para condicionar tráfego e reinícios.
- Um breve não-200 durante o aquecimento é transitório, ao contrário de uma falha persistente.