Práticas Recomendadas de Resiliência
Documente a segurança de retentativas por endpoint no OpenAPI. Estas regras mantêm os serviços Node.js disponíveis quando as dependências ficam lentas ou falham.
Busque em todas as páginas da documentação
Documente a segurança de retentativas por endpoint no OpenAPI. Estas regras mantêm os serviços Node.js disponíveis quando as dependências ficam lentas ou falham.
x-retry-safe e x-idempotency por operação.fetch e cliente HTTP usa AbortSignal.timeout. Sem esperas infinitas.statement_timeout do DB ou timeout de consulta do driver configurado. Bloqueio no lado do servidor para SQL descontrolado.requestTimeout do servidor < ocioso do LB. Orçamento escalonado.timeout. Workers não executam sem limites.Idempotency-Key em POST que cria cobranças ou pedidos. Documente no OpenAPI.meta.degraded em respostas da API ao descartar recursos. O cliente pode ajustar a UI.FEATURE_X=off sem redeploy.open do circuito. Notifique quando o breaker de dependência principal abrir.server.close, esvazie pools, sdk.shutdown(). Corresponda ao período de graça do k8s.Timeouts em todas as chamadas de saída + desligamento gracioso + sonda de readiness. Adicione breakers antes que as integrações opcionais se multipliquem.
Ambos podem retentar GET; o servidor é responsável pela idempotência para mutações. Documente o contrato claramente.
Não, se meta.degraded for honesto. Mentir é retornar sucesso para um pagamento falho - nunca faça isso.
Sim para fornecedores externos e microsserviços internos chamados via HTTP.
Envolva provedores com opossum; use Terminus para saúde; habilite hooks de desligamento.
Retente na camada HTTP para resposta inteira 5xx. Erros de campo precisam de design de resposta parcial.
Envie POST duplicado com a mesma chave; afirme um único efeito colateral e corpo de resposta idêntico.
Padrões de resiliência protegem o orçamento de erro. Veja SLOs e Orçamentos de Erro.
Versões da Stack: Esta página foi escrita para Node.js 24.18.0 (Active LTS), npm 10+, TypeScript 5.6+, Express 5, Fastify 5, e NestJS 11.
Revisado por Chris St. John·Última atualização: 16 de jul. de 2026