Nginx之负载均衡

 

  • 负载均衡按照地域划分
    •   GSLB

       

    •   SLB(Nginx就是一个典型的SLB)

       

  • 按照网络模型OSI
    • 四层(传输层)负载均衡:对客户端TCP/IP协议的包转发
    • 七层(应用层)负载均衡:Http的应用层负载均衡,Nginx就是一个典型的7层负载均衡SLB
  • Nginx负载均衡

     

  • 配置语法
    upstream backend  {
      server backend1.example.com weight=5;
      server backend2.example.com:8080;
      server unix:/tmp/backend3;
    }
     
    server {
      location / {
        proxy_pass  http://backend;
      }
    }

     

  • 机器测试Nginx负载均衡
    http {
    : upstream myproject {
    : server 127.0.0.1:8000 weight=3;
    : server 127.0.0.1:8001;
    : server 127.0.0.1:8002;
    : server 127.0.0.1:8003;
    : }
    
    : server {
    : listen 80;
    : server_name www.domain.com;
    : location / {
    : proxy_pass http://myproject;
    : }
    : }
    }

     

  • upstream的常见用法

     

  • 后端服务器在负载均衡调度中的状态
    down    当前server暂时不参与负载均衡
    
    backup    预留的备份服务器(当正在使用的后端服务异常时,启动预留服务)
    
    max_fails    允许请求失败的次数
    
    fail_timeout    经过max_fails失败后,服务暂停的时间
    
    max_conns    限制最大的接受的连接数
    

     

  • 调度算法

     

posted @ 2018-01-09 23:39 jimisun 阅读(...) 评论(...) 编辑 收藏