Nginx系列

  1. 入门——Nginx系列——配置详解
  2. 进阶——Nginx系列——负载均衡配置
  3. 进阶——Nginx系列——解决跨域与接口可用性探测
  4. 进阶——Nginx系列——缓存解决接口性能问题
  5. 进阶——Nginx系列——accessLog日志挖掘与恶意IP封禁
  6. 进阶——Nginx系列——websocket反向代理与资源压缩


文章目录

  • Nginx系列
  • 1、什么是负载均衡?
  • 2、负载均衡实现有哪几种?
  • 3、负载均衡策略有哪几种?
  • 3.1、轮询策略配置
  • 3.2、权重策略
  • 3.3、IP hash
  • 4、服务下线
  • 5、备用服务
  • 6 、配置文件修改完后进行报错并重启Nginx


1、什么是负载均衡?

      在理解负载均衡前我们知道请求通过客户端发送到服务器,再由服务器将数据返回给我们。这样就是一个完整的请求。但是一般来说服务器无法承受巨量的请求,这个时候就需要集群,就是我们说的以量取胜。但是这样还是存在问题,就是有的服务器处理的请求很多,但是有的服务器很少甚至可能没有,这样就导致了资源的极大浪费,在这种情况下,就诞生了负载均衡,负载均衡就是在有多台服务器的基础上,对服务器的压力进行分析,根据策略将请求分配给各个服务器。

2、负载均衡实现有哪几种?

  1. 通过硬件来进行解决
    常见的硬件有NetScaler、F5、Radware和Array等商用的负载均衡器,但比较昂贵的
  2. 通过软件来进行解决
    常见的软件有LVS、Nginx等,它们是基于Linux系统并且开源的负载均衡策略

3、负载均衡策略有哪几种?

  1. 轮询策略
  2. 权重策略
  3. IP hash
3.1、轮询策略配置
upstream lbs {                       //集群别名 lbs
server 192.168.0.106:8080;      //集群的服务
server 192.168.0.106:8081;
}

location /api/ {   //访问前缀 
proxy_pass http://lbs;
proxy_redirect default;
}

如下图:

负载均衡需要几个公网ip 负载均衡配置要求_负载均衡

3.2、权重策略
upstream lbs {
server 192.168.159.133:8080 weight=5;
server 192.168.159.133:8081 weight=10; 
}

注:weight和访问比率成正比,数字越大,分配得到的流量越高

3.3、IP hash
upstream lbs {
ip_hash;
server 192.168.159.133:8080;
server 192.168.159.133:8081;
}

IP hash根据请求按访问ip的hash结果分配,这样每个用户就可以固定访问一个后端服务器
场景:服务器业务分区、业务缓存、Session需要单点的情况

4、服务下线

server 192.168.159.133:8080 down;

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

5、备用服务

server 192.168.159.133:8080 backup;

备用机器 backup 其它所有的非backup机器down的时候,会请求backup机器,这台机器压力会最轻,配置也会相对低

6 、配置文件修改完后进行报错并重启Nginx

Nginx -s reload