• Nginx负载均衡


    Nginx负载均衡配置文件:

     1 http {
     2 
     3 # 测试负载均衡
     4     upstream fank {
     5         server 127.0.0.1:8080;
     6         server 139.199.13.58:8080;
     7     }
     8 
     9     server {
    10         listen       80;
    11         server_name  localhost;
    12         location / {
    13             proxy_pass http://fank;
    14             # proxy_pass http://127.0.0.1:8080;
    15             # root   html;
    16             # index  index.html index.htm;
    17        }
    18     }
    19 }

    Nginx负载均衡原理:

    这个肯定大家都有所接触,因为几乎所有主流的Web服务器都热衷于支持基于反向代理的负载均衡。它的核心工作就是转发HTTP请求

    相比前面的HTTP重定向和DNS解析,反向代理的调度器扮演的是用户和实际服务器中间人的角色:

    1、任何对于实际服务器的HTTP请求都必须经过调度器

    2、调度器必须等待实际服务器的HTTP响应,并将它反馈给用户(前两种方式不需要经过调度反馈,是实际服务器直接发送给用户)

    Nginx负载均衡策略:

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

    1 upstream backserver { 
    2     server 192.168.0.14; 
    3     server 192.168.0.15; 
    4 } 



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

    1 upstream backserver { 
    2     server 192.168.0.14 weight=10; 
    3     server 192.168.0.15 weight=10; 
    4 } 


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

    1 upstream backserver { 
    2     ip_hash; 
    3     server 192.168.0.14:88; 
    4     server 192.168.0.15:80; 
    5 } 



    4、fair(第三方) 
    按后端服务器的响应时间来分配请求,响应时间短的优先分配。 

    1 upstream backserver { 
    2     server server1; 
    3     server server2; 
    4     fair; 
    5 } 



    5、url_hash(第三方) 
    按访问url的hash结果来分配请求,使每个url定向到同一个后端服务器,后端服务器为缓存时比较有效。 

    1 upstream backserver { 
    2     server squid1:3128; 
    3     server squid2:3128; 
    4     hash $request_uri; 
    5     hash_method crc32; 
    6 } 
  • 相关阅读:
    ASP.NET(C#)——唯一订单号
    Oracle——备份与还原
    ASP.NET(C#)——日期函数
    数据安全——数据安全标准
    文件内容的追加
    文件的读取
    创建文件,写文件
    遍历文件改进
    遍历文件夹
    递归方法求前n项和
  • 原文地址:https://www.cnblogs.com/wenbochang/p/9100473.html
Copyright © 2020-2023  润新知