zoukankan      html  css  js  c++  java
  • Nginx对后端upstream server启用keepalive

    Nginx upstream目前只有短连接,通过HTTP/1.0向后端发起连接,并把请求的"Connection" header设为"close"。Nginx与前端的连接默认为长连接,一个用户跟Nginx建立连接之后,通过这个长连接发送多个请求。如果Nginx只是作为reverse proxy的话,可能一个用户连接就需要多个向后端的短连接。如果后端的服务器(源站或是缓存服务器)处理并发连接能力不强的话(比如单进程的squid),就可能导致瓶颈的出现。

    从nginx 1.1.4 开始有了原生的ngx_http_upstream_keepalive 模块 和"proxy_http_version" fastcgi_keep_conn" 等指令
    ,所以后端的keepalive也在nginx 1.2.0成为现实

    HTTP 1.0实现长连接需要设置请求头部Connection: keep-alive。

    但是在HTTP 1.1 中已经不需要了。

    所以在nginx中这样配置:

    upstream http_backend {
        server 127.0.0.1:8080;
     
        keepalive 16;
    }
     
    server {
        ...
     
        location /http/ {
            proxy_pass http://http_backend;
            proxy_http_version 1.1;
            proxy_set_header Connection "";
            ...
        }
    }
  • 相关阅读:
    C语言II博客作业02
    C语言II博客作业01
    C语言II博客作业04
    C语言II博客作业03
    C语言II博客作业02
    C语言II博客作业01
    C语言||博客作业04
    C语言II博客作业04
    C语言II博客作业03
    C语言II博客作业02
  • 原文地址:https://www.cnblogs.com/huazi/p/2946752.html
Copyright © 2011-2022 走看看