登录后台

页面导航

本文编写于 772 天前,最后修改于 772 天前,其中某些信息可能已经过时。

down标识关闭状态

down将服务器标记为不可用状态

upstream load_pass{
    server 172.16.16.2:80 down;#一般用于服务器维护
    server 172.16.16.3:80;
}
server {
    listen 80;
    server_name jsocn.com;
    
    location / {
        proxy_pass http://load_pass;
        include proxy_params;
    }
}

backup标识备份状态

backup将服务器标为备份服务器。当服务器不可用时,将请求传递至备份服务器。

upstream load_pass{
    server 172.16.16.2:80 backup;
    server 172.16.16.3:80;
}
server {
    listen 80;
    server_name jsocn.com;
    
    location / {
        proxy_pass http://load_pass;
        include proxy_params;
    }
}

max_conns限制连接数

用于限制每个后端节点的最大tcp连接数,如果超出则抛出错误

upstream load_pass{
    server 172.16.16.2:80 max_conns=2;
    server 172.16.16.3:80 max_conns=2;
}
server {
    listen 80;
    server_name jsocn.com;
    
    location / {
        proxy_pass http://load_pass;
        include proxy_params;
    }
}

keepalive提高吞吐量

keepalive是与后端节点激活缓存,也就是长链接,用于提高网站吞吐量。默认情况下没有启用长链接功能,当有请求时,需要建立连接,维护连接,关闭连接,这样会产生网络消耗,当所有链接都缓存了,当链接空闲时,又会占用资源,所以我们可以使用keepalive来激活缓存,同时还可以使用keepalive参数来限制最大空闲连接数。

upstream web{
    server 172.16.16.2;
    server 172.16.16.3;
    keepalive 16; #最大空闲连接数,注意不是最大连接数
    keepalive_timeout 100s; #空闲连接的超时时间
}
server {
    listen 80;
    server_name jsocn.com;
    location / {
        proxy_pass http://web;
        proxy_http_version 1.1;
        proxy_set_header Connection "";
    }
}

max_fails和fails_timeout

max_fails=2 检测节点通讯2次,若两次都失败则判断服务器不可用
fails_timeout=5s 服务器通讯失败后,间隔5秒后再去检测
在fails_timeout设定时间内,与服务器连接失败打到max_fails则认为服务器不可用

upstream load_pass{
    server 172.16.16.2:80 max_fails=2 fail_timeout=5s;若不设置默认次数为1超时为10秒
    server 172.16.16.3:80 max_fails=2 fail_timeout=5s;
}
server {
    listen 80;
    server_name jsocn.com;
    
    location / {
        proxy_pass http://load_pass;
        include proxy_params;
    }
}