Eu tenho um VPS bem pequeno na AWS (EC2 t2.nano) que está executando um servidor nginx. enquanto às vezes um sudo service nginx reload
ou nginx -t
é muito rápido, na maioria das vezes é terrivelmente lento (> 60 segundos) sem qualquer carga no servidor.
Existem ~ 10 blocos de servidores definidos como proxies 3 deles com SSL ativado.
nginx-t -v
não dá nenhuma pista, porque é tão lento, não consigo encontrar nada nos logs. O uso de RAM e CPU é bem baixo durante isso.
como posso investigar o que faz uma recarga de nginx que demora, o que é coisa comum, eu poderia procurar? Resoluções de DNS? Meus upstreams são definidos como, por exemplo,
upstream ent-pbmcom {
ip_hash; # for sticky sessions
server 10.0.2.52:8080;
}
...
server {
...
location / {
add_header X-Block "ent-pbmcom";
add_header X-Upstream $upstream_addr;
add_header X-Requested-Host '$host';
proxy_pass http://ent-pbmcom;
proxy_set_header X-Real-IP $remote_addr; # http://wiki.nginx.org/HttpProxyModule
proxy_set_header Host $host; # pass the host header - http://wiki.nginx.org/HttpProx$
proxy_http_version 1.1; # recommended with keepalive connections - http://nginx.org/$
# WebSocket proxying - from http://nginx.org/en/docs/http/websocket.html
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection $connection_upgrade;
proxy_redirect off;
}
}
Tags nginx optimization