nginx 负载均衡
Linux 2023/3/25 11:13:54 点击:不统计
原载于:转www.载for网站制作学习asp必.cn究
nginx负载均衡有5中模式,分别是 轮询、IP哈希、最少连接数、URL哈希和加权轮询
下面我么对5中nginx负载均衡配置进行说明
我么假定upstream有3台服务器分别是(假定端口为88)
A 127.0.0.2,
B 127.0.0.3,
C 127.0.0.4
主对外服务器为
D 127.0.0.1
1. nginx负载均衡第一中轮询法则,也是默认规则 特点:按照顺序 当请求来时按照A,B,C,A,B,C,A,B,C...进行分配
可以认为是绝对的平均
在nginx http中配置如下
upstream forasp_cn_upserver {
server 127.0.0.2:88;
server 127.0.0.2:88;
server 127.0.0.3:88;
}
server {
listen 80;
server_name www.forasp.cn;
location / {
proxy_pass http://forasp_cn_upserver;
}
}
2. IP哈希模式,根据哈希值去计算,特点:当访问量大时理论上也会平均,固定ip用户 会落到固定的upstream
在nginx http中配置如下
upstream forasp_cn_upserver {
ip_hash;
server 127.0.0.2:88;
server 127.0.0.2:88;
server 127.0.0.3:88;
}
server {
listen 80;
server_name www.forasp.cn;
location / {
proxy_pass http://forasp_cn_upserver;
IPproxy_set_header X-Real-IP $remote_addr;
}
}
注意:经过反向代理的请求ip都会变成本机ip,需要在http层内,server层同级便获取客户端真实IPproxy_set_header X-Real-IP $remote_addr;
3. nginx负载均衡按照最小连接数 配置如下
1)使用'最少连接算法'可以使得nginx'优先选择连接最少'的上游服务器-->解决'负载均衡'的问题
2)需要用到'upstream_least_conn'模块
upstream forasp_cn_upserver {
least_conn;
server 127.0.0.2:88;
server 127.0.0.2:88;
server 127.0.0.3:88;
}
4. 第四种 URL哈希,跟IP哈希很像,特点:关键是用户请求的地址,根据地址来哈希的不同的url 访问不同服务器
upstream forasp_cn_upserver {
hash $request_uri consistent;
server 127.0.0.2:88;
server 127.0.0.2:88;
server 127.0.0.3:88;
}
5.第五种 加权轮询,这个可以跟upstream 特点:可以根据服务器的负载能力进行分配
比如 下面配置 3个服务器的 接受请求比例为 50% 10% 40%
upstream forasp_cn_upserver {
server 127.0.0.2:88 weight=5;
server 127.0.0.2:88 weight=1;
server 127.0.0.3:88 weight=4;
}
以上就是 nginx 5中负载均衡配置
原载于:网f站o学a习s制p作.cn
·上一篇:nginx跨域配置 >> ·下一篇:nginx 设置禁止搜索引擎蜘蛛爬取内容 >>