您的位置:首页 > 运维架构 > Nginx

nginx均衡负载的设置

2014-04-24 18:16 399 查看
再看了一下nginx均衡负载的一些设置,其实就是对于配置文件的一些修改,看看以下配置文件这个例子

http {
upstream www.test1.com {
ip_hash;
server 172.16.125.76:8066 weight=10;
server 172.16.125.76:8077 down;
server 172.16.0.18:8066 max_fails=3 fail_timeout=30s;
server 172.16.0.18:8077 backup;
}

upstream www.test2.com {
server 172.16.0.21:8066;
server 192.168.76.98:8066;
}

server {
listen 80;
server_name www.test1.com;

location /{
proxy_pass http://www.test1.com; proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}

server {
listen 80;
server_name www.test2.com;

location /{
proxy_pass http://www.test2.com; proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}

定义了两个不知道叫啥的东西,暂且叫server,www.test1.com和www.test2.com,upstream当中的server对应了分配的各个不知到叫啥的东西,对应server花括号里面需要设置对应的proxy_pass,这样就可以实现自动分配了
www.test2.com就是标准的均衡负载,几个server轮流分配,而在www.test1.com中,有ip_hash这么一句,这就表示按ip会记录并分配对应的server,用这种方法可以实现会话保持。

后面跟weight,表示分配权重;

down表示负载过重或者不参与了;

backup 其它服务器时或down时才会请求backup服务器;

max_fails 失败超过指定次数会暂停或请求转往其它服务器;

fail_timeout 失败超过指定次数后暂停时间;
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: