负载均衡:在服务集群中,需要有一台服务器作为调度者, 客户端所有请求都由调度者接受,调度者再根据每台服务的负载情况,分配给指定服务器进行处理。
负载均衡几种配置
- weight权重
- iphash
- least_conn 最小连接数
- fair 响应速度 决定
1.权重方法配置
weight权重比例,访问次数比例是3:1
http {
upstream halou2 {
server 127.0.0.1:7003 weight=3;
server 127.0.0.1:7004 weight=1;
}
server {
listen 80; // 服务默认端口值
server_name localhost; // 访问server名称
location /test.html {
root html;
// 转发到halou组群, 优先级高于nginx,下面的index不会再执行了
proxy_pass http://halou2;
index index.html index.htm;
}
}
}
2.iphash方法配置
根据 访客的机器ip来固定的访问一个服务器
http {
upstream halou2 {
ip_hash;
server 127.0.0.1:7003;
server 127.0.0.1:7004;
}
server {
listen 80; // 服务默认端口值
server_name localhost; // 访问server名称
location /test.html {
root html;
// 转发到halou组群, 优先级高于nginx,下面的index不会再执行了
proxy_pass http://halou2;
index index.html index.htm;
}
}
}
3.least_conn 最少连接数配置
哪个服务连接数少,就会访问哪个。需要 安装插件 来帮助我们实现
http {
upstream halou2 {
least_conn;
server 127.0.0.1:7003;
server 127.0.0.1:7004;
}
server {
listen 80; // 服务默认端口值
server_name localhost; // 访问server名称
location /test.html {
root html;
// 转发到halou组群, 优先级高于nginx,下面的index不会再执行了
proxy_pass http://halou2;
index index.html index.htm;
}
}
}
4.fair根据后端响应时间配置
哪个响应时间快,优先访问哪个
http {
upstream halou2 {
server 127.0.0.1:7003;
server 127.0.0.1:7004;
fair;
}
server {
listen 80; // 服务默认端口值
server_name localhost; // 访问server名称
location /test.html {
root html;
// 转发到halou组群, 优先级高于nginx,下面的index不会再执行了
proxy_pass http://halou2;
index index.html index.htm;
}
}
}