form1.cn
Make a little progress every day

Nginx配置后端服务器的5个指令

01th of November 2016 Linux Nginx 2612

1,upstream
通过 upstream 可以设定后端服务器,指定的方式可以是 IP 地址与端口、域名、UNIX 套接字(socket)。其中如果域名可以被解析为多个地址,则这些地址都作为 backend。下面举例说明:

upstream backend {
    server blog.csdn.net/poechant;
    server 145.223.156.89:8090;
    server unix:/tmp/backend3;
}


2,server
设置组内服务器,如上面的 

server 145.223.156.89:8090;


3,ip_hash
每个请求按访问ip的hash结果分配,这样每个访客固定访问一个后端服务器,可以解决session的问题。下面举例说明:

upstream backend {
    ip_hash;
    server 145.223.156.1;
    server 145.223.156.2;
}


4,keepalive
Nginx Upstream长连接由upstream模式下的keepalive指令控制,并指定可用于长连接的连接数,配置样例如下:

upstream http_backend {
    server 127.0.0.1:8080;
    keepalive 16;
}


5,least_conn
nginx在1.3.1添加了一个新模块 least_conn,也就是我们常说的最少连接负载均衡算法,简单来说就是每次选择的都是当前最少连接的一个server(这个最少连接不是全局的,是每个进程都有自己的一个统计列表)。

upstream http_backend {
    least_conn;
    server 127.0.0.1:8080;
    keepalive 16;
}