Asp.net core 为什么nginx reserve proxy上游是一个静态网站,还有很多时间等待?如何解决

Asp.net core 为什么nginx reserve proxy上游是一个静态网站,还有很多时间等待?如何解决,asp.net-core,nginx,.net-core,Asp.net Core,Nginx,.net Core,nginx配置:(该配置是针对aspnet核心的,但现在测试iis上的静态网站) 每次从chrome访问后,等待时间+1 这都发生在Windows10+nginx和Ubuntu16.04+nginx上 为什么会这样?如何解决这个问题?求救 我试图更改内核配置,但这不是我想要的,我需要知道为什么会发生这种情况?我的nginx配置负责人是这个吗?否则呢?我想你是担心港口耗尽了。您应该将代理_过程更改为使用上游块,然后在上游启用保持活动池。例如: upstream backend { serv

nginx配置:(该配置是针对aspnet核心的,但现在测试iis上的静态网站)

每次从chrome访问后,等待时间+1

这都发生在Windows10+nginx和Ubuntu16.04+nginx上

为什么会这样?如何解决这个问题?求救


我试图更改内核配置,但这不是我想要的,我需要知道为什么会发生这种情况?我的nginx配置负责人是这个吗?否则呢?

我想你是担心港口耗尽了。您应该将代理_过程更改为使用上游块,然后在上游启用保持活动池。例如:

upstream backend {
    server 127.0.0.1:81;
    keepalive 20;
}

location / {
    proxy_pass         http://backend;
    proxy_http_version 1.1;
    proxy_set_header   Upgrade $http_upgrade;
    ...
}

还可以看看NGINX博客:

谢谢@TuxInvader,在我的测试中,只有一个客户端,请求10次,每次请求时间\u WAIT+1连接关闭后,您将始终获得时间等待,这是标准的tcp行为。这不是一个问题,除非你用完了短暂的港口。在上游池中使用keep alives应该允许tcp套接字保持打开状态并为多个客户端提供服务。我做了另一个测试:windows server 2008 r2+iis(反向代理)+asp.net core,iis作为反向代理,将不生成时间等待,我被nginx搞糊涂了?这个原因是:`TCP 127.0.0.1:12284 127.0.0.1:81时间等待0 TCP 127.0.0.1:12285 127.0.0.1:80时间等待0 TCP 127.0.0.1:12287 127.0.0.0.1:81时间等待0 TCP 127.0.0.1:12289 127.0.0.1:81时间等待0`你能帮我吗@Tuxinvaderlive解决了我的问题。谢谢@TuxInvader
upstream backend {
    server 127.0.0.1:81;
    keepalive 20;
}

location / {
    proxy_pass         http://backend;
    proxy_http_version 1.1;
    proxy_set_header   Upgrade $http_upgrade;
    ...
}