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; }