高性能 Web 应用服务器 Nginx 三大功能之 —— 负载均衡
介绍
负载均衡就是将大量的请求按照某种方式均衡分配给集群中的服务器,防止大量请求只请求一台服务器,从而导致服务崩溃。
轮询策略
Nginx 负载均衡策略(内置)主要有四种:
- 轮询策略(默认的负载均衡策略)
- 最少连接数负载均衡策略
- ip-hash 负载均衡策略
- 权重负载均衡策略
轮询策略
轮询负载策略是指每次将请求按顺序轮流发送至相应的服务器上:
plaintext
1 | upstream server_list { |
最少连接数负载均衡策略
此策略是指每次将请求分发到当前连接数最少的服务器上,也就是 Nginx 会将请求试图转发给相对空闲的服务器以实现负载均衡,它的配置示例如下:
plaintext
1 | #负载均衡 |
ip-hash 负载均衡策略
ip-hash 负载均衡策略可以根据客户端的 IP,将其固定的分配到相应的服务器上,配置:
plaintext
1 | #负载均衡 |
加权负载均衡
此配置方式是指每次按照服务器配置的去权重进行请求分发,权重高的服务器会收到更多的请求,这就相当于给 Nginx 在请求分发时加了一个参考的权重选项,并且这个权重值是可以人工配置的,我们可以将服务器配置高的调的权重相对高一些,以便承担更多请求:
plaintext
1 | upstream server_list { |
其中,8 次请求中,有 5 次发给了权重为 5 的服务器,2 次发给了权重为 2 的服务器,1 次发给了权重为 1 的服务器,down 代表临时不参与负载,backup 代表其他全部的非 backup 机器 down 或者忙的时候,请求 backup 机器。所以这台机器压力会最轻
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 枫叶!