Erro Nginx 502 com localhost vs 127.0.0.1

Erro Nginx 502 com localhost vs 127.0.0.1

Eu tenho um aplicativo da web em execução em 127.0.0.1:8080. Inicialmente configurei meu nginx.confusando localhost:8080. Exemplo:

location / {
    proxy_set_header Host $host;
    proxy_pass http://localhost:8080;
}

Isso funcionou bem 99% das vezes. O problema, entretanto, era que quando um usuário fazia uma solicitação que provocava pânico em meu aplicativo da web, esse usuário não apenas receberia um erro 502, mas todo o meu site ficaria fora do ar para TODOS os usuários. Até reiniciar o aplicativo da web manualmente.

O comportamento esperado era que o usuário que acionou o erro recebesse um erro 502, mas seria isolado para todos os outros usuários. Portanto, o site ainda estaria acessível em vez de estar fora do ar para todos.

Fiquei muito tempo sem saber como consertar isso. Até que comecei a usar 127.0.0.1:8080em vez de localhost:8080. Então

location / {
    proxy_set_header Host $host;
    proxy_pass http://127.0.0.1:8080;
}

Usar 127.0.0.1:8080meu site não ficaria mais fora do ar para todos se um usuário provocasse pânico em meu aplicativo da web.

Qual é a razão para isto? Eu pensei localhoste 127.0.0.1era o mesmo. Isso ocorre porque ao usar localhosto servidor ainda é necessário fazer uma solicitação de DNS e o DNS está de alguma forma indisponível devido ao erro?

informação relacionada