我的configuration:
upstream api-backend { server localhost:9005; } server { listen 80; lingering_close off; root /var/www/html; index index.html; location /api/ { proxy_http_version 1.1; proxy_set_header Connection ""; add_header 'Access-Control-Allow-Origin' '*'; add_header 'Access-Control-Allow-Methods' 'GET, POST, PUT'; proxy_pass http://api-backend/; } location / { expires off; try_files $uri $uri/ =404; } }
我提供了/ var / www / html文件,/ api端点转发到Go服务。 Go服务在几秒内完成请求,但Chrome的networking标签报告请求都比1s长几毫秒。
我相信这是保持连接打开的Nginx。 我怎样才能弄清楚什么是保持连接活着,以及如何尽快closures它?
我可能会从keepalive_disable开始,可以在http,服务器或位置级别。 但是,默认是75秒,所以这可能无法解决问题。
这是keepalive防止客户端接收数据? 您可以发布Chromenetworking标签的屏幕截图,并描述您遇到的问题吗?
Keepalives 通常是一件好事 。 如果再次请求数据,它们可以防止再次build立连接的开销。 如果这不造成问题,我不会这样做。