Nginx负载均衡

Nginx的负载均衡是一个典型的七层负载均衡的lsb;

通过proxy_pass和upstream实现

  upstream的配置语法

    Syntax:upstream name{...}

    Default:---

    Context:http 

               

    默认是轮训的方式,即一次访问每个server;

  

  后端服务器再负载均衡调度中的状态:

down  当前的server展示不参加负载均衡
backup 预留的备份服务器
max_fails 允许请求失败的次数
faul_timeout 进过max_fails失败后,服务暂停时间
max_conns   限制最大的接收的连接数

 

    即在upstream的服务地址后面追加参数,比如:

      upstream myupstream {

        server 192.168.1.3:8080 down;    
        server 192.168.1.3:8081 max_fails=1 fail_timeout=10s;
        }

    调度算法:  

轮询 按照时间顺序逐一分配到不同的后端服务器
加权轮询 weight值越大,分配到的访问几率越高
ip_hash 每个请求按照ip的hash结果分配,这样来自同一个ip的固定访问一个后端服务器
least_conn 最小连接数,哪个机器连接数越少就分发
url_hash 按照url的hash结果来分配
hash关键数值 hash的自定义key值

 

      配置如下:

      upstream myupstream {
        ip_hash;// hash $request_uri;         server
192.168.1.3:8080 down;             server 192.168.1.3:8081 max_fails=1 fail_timeout=10s;         }

 

posted @ 2019-03-12 22:16  zlAdmin  阅读(196)  评论(0)    收藏  举报