什么是负载均衡
负载均衡就是将负载(工作任务,访问请求)进行平衡、分摊到多个操作单元(服务器,组件)上进行执行。是解决高性能,单点故障(高可用),扩展性(水平伸缩)的终极解决方案。
Nginx负载均衡的几种策略方式
1.轮询(默认)
客户端发出的每个请求将按照时间顺序逐一分配到不同的后端服务器,如后端服务器down掉,能自动剔除。
2.权重
weight 代表权重,默认为1,权重越高被分配的客户端也就越多。
3.p_hash
每个请求按访问 IP 的hash
结果分配,每个访客固定访问一个后端服务器,可解决session
的问题。
4.fair(第三方)
按后端服务器的响应时间来分配请求,响应时间短的优先分配。
5.url_hash(第三方)
按访问url
的hash
结果来分配请求,使每个url
定向到同一个后端服务器,后端服务器为缓存时比较有效。
实现方式
1.安装nginx 需要两个宝塔
2.打开nginx的配置文件
3.配置文件
upstream 域名{
server ip1:端口号;
server ip2:端口号;
}
server{
listen 80;
server_name 域名;
location / {
proxy_pass http://域名;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}
4.点击自己的站点 域名管理添加 ip2的域名格式为 ip2:端口号
在复制3到ip2的nginx配置文件里面
5.在第二个宝塔里面 同4操作 域名管理添加 ip2的域名格式为 ip2:端口号 (备案)
6.访问自己的域名即可实现负载均衡。(可多个服务器)