【nginx】十一、nginx负载均衡

作者 : 开心源码 本文共1063个字,预计阅读时间需要3分钟 发布时间: 2022-05-11 共74人阅读

当使用户量很大时,一台服务器单位时间内访问量很大的时候,服务器压力就会很大,当达到这台服务器的极限,就会崩溃;怎样处理?能通过nginx的反向代理商设置,增加几台同样功可以的服务器 分担压力。

【nginx】十一、nginx负载均衡

nginx负载均衡

nginx实现负载均衡原理,使用户访问首先访问到nginx服务器,而后nginx服务器再从应使用服务器集群中选择压力比较小的服务器,而后将该访问请求引向该服务器。如应使用服务器集群中某一台服务器崩溃,那么从待选择服务器列表中将该服务器删除,也就是说一个服务器崩溃了,那么nginx服务器不会把请求引向到该服务器。

nginx通过指令upstream实现负载均衡,如:

upstream mypro { #mypro代表此负载均衡的规则名称

server 192.168.5.140:8080; #服务器1的ip地址以及端口

server 192.168.5.141:8080; #服务器2的ip地址以及端口

}

server {

listen 80;

server_name 192.168.5.138;

location / {

proxy_pass http://mypro;

}

}

上面的配置代表,使用户访问服务器192.168.5.138,端口80时,nginx会把请求传发给mypro的负载均衡规则去解决;nginx会随机取一个mypro下的服务器来解决使用户请求。

nginx在选取upstream服务器列表的规则,默认是随机;当然nginx还支持其余的选取规则

根据权重选取

upstream mypro { #weight权重越大,选取占比越高

server 192.168.5.140:8080 weight=5;

server 192.168.5.141:8080 weight=10;

}

根据ip_hash选取

upstream mypro {

ip_hash; #加入ip_hash指令

server 192.168.5.140:8080;

server 192.168.5.141:8080;

}

ip_hash选取规则,是根据请求用户端的ip的hash值配对选择一个服务器,下次此用户端再次访问时,会配对相同的服务器解决请求;这样的好处在于有些带有状态的业务,即可以一直在同一个服务器上进行解决。

ip_hash这种方式在很多场景会使用到,如:session会话,状态转发服务等业务。

随机选取(默认)

upstream mypro {

server 192.168.5.140:8080;

server 192.168.5.141:8080;

}

nginx的负载均衡就先详情到这里,大家有什么问题能回复老顾

说明
1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长!
2. 分享目的仅供大家学习和交流,您必须在下载后24小时内删除!
3. 不得使用于非法商业用途,不得违反国家法律。否则后果自负!
4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解!
5. 如有链接无法下载、失效或广告,请联系管理员处理!
6. 本站资源售价只是摆设,本站源码仅提供给会员学习使用!
7. 如遇到加密压缩包,请使用360解压,如遇到无法解压的请联系管理员
开心源码网 » 【nginx】十一、nginx负载均衡

发表回复