Tratando cenários de timeout HTTP 504
Quando a plataforma recebe um 504 Gateway Timeout, primeiro determine se o
atraso ocorreu na API ASP.NET Core, na camada PostgreSQL ou em uma dependência
upstream.
Checklist sugerido
- Confirme o endpoint com falha e os identificadores de correlação da requisição.
- Inspecione os logs da API em busca de acesso lento ao banco ou latência de dependências externas.
- Revise os limites de timeout do cliente antes de aumentar o volume de retries.
Exemplo de política de timeout
var timeout = TimeSpan.FromSeconds(15);
var requestStartedAtUtc = DateTimeOffset.UtcNow;
if (DateTimeOffset.UtcNow - requestStartedAtUtc > timeout)
{
throw new TimeoutException("A dependência upstream não respondeu a tempo.");
}
Prefira identificar o gargalo concreto antes de alterar valores globais de timeout.