关于Nginx负载均衡的详解教程

来源:互联网 发布:淘宝国产高达禁卖 编辑:程序博客网 时间:2024/06/07 12:18

上一篇我们说到《Linux服务器出现大量TIME_WAIT解决教程》,本片来说一下负载均衡。

什么是负载均衡?

负载平衡也称负载共享,是指对系统中的负载情况进行动态调整,以尽量消除或减少系统中各节点负载不均衡的现象。具体实现方法是将过载节点上的任务转移到其他轻载节点上,尽可能实现系统各节点的负载平衡,从而提高系统的吞吐量。负载共享有利于统筹管理分布式系统中的各种资源,便于利用共享信息及其服务机制扩大系统的处理能力。

为什么选择Nginx?

1.高并发连接

2.内存消耗少

3.配置文件简单

4.开源

5.内置的健康检查功能

6.稳定性高

常用负载均衡

1.HTTP 重定向

2.DNS负载均衡

3.反向代理负载均衡

4.IP负载均衡

负载均衡原理图

关于Nginx负载均衡的详解教程

Nginx 的 upstream目前支持 4 种方式的分配 :

1)轮询(默认)

每个请求按时间顺序逐一分配到不同的后端服务器,如果后端服务器down掉,能自动剔除。

2)weight

指定轮询几率,weight和访问比率成正比,用于后端服务器性能不均的情况。

2)ip_hash

每个请求按访问ip的hash结果分配,这样每个访客固定访问一个后端服务器,可以解决session的问题。

3)fair(第三方)

按后端服务器的响应时间来分配请求,响应时间短的优先分配。

4)url_hash(第三方)

多台服务器, 不同的服务器缓存不同的资源,当相同的url访问会到达同一台服务器。

Nginx配置负载均衡

Nginx不单可以作为强大的web服务器,也可以作为一个反向代理服务器,而且nginx还可以按照调度规则实现动态、静态页面的分离,可以按照轮询、ip哈希、URL哈希、权重等多种方式对后端服务器做负载均衡,同时还支持后端服务器的健康检查。

配置步骤

在配置之前先 ping 下业务服务器

代理服务器 192.168.1.180

业务服务器 192.168.1.181 和 192.168.1.182

在http节点里添加:#定义负载均衡设备的 Ip及设备状态

upstream myServer {

server 192.168.1.181:8080

server 192.168.1.182:8080 weight=2;

server 192.168.1.183 down;

server 192.168.1.184 backup;

}

PS:

down 表示单前的server暂时不参与负载

weight 默认为1.weight越大,负载的权重就越大。

max_fails :允许请求失败的次数默认为1.当超过最大次数时,返回proxy_next_upstream 模块定义的错误

fail_timeout:max_fails 次失败后,暂停的时间。

backup: 其它所有的非backup机器down或者忙的时候,请求backup机器。所以这台机器压力会最轻。

0 0
原创粉丝点击