反向代理之负载均衡

负载均衡:
一听这词不少小伙伴吓坏了,前人就喜欢搞一些看起来很高大上的词,好让后生望而敬畏.那咱们一块儿来捋一捋. 负载就是负担. 均衡就是平均分.这样 一说就是负担平均分.nginx

服务器也要减减压
咱们都知道服务器是第三产业,服务行业,客户来了,你不能不服务.客户少还行,客户多了一台服务器就顶不住了,怎么办?咱们找来多台服务器,让这些服务器去均分客户而后服务响应.或者让某些服务器只干一类时,来提升效率.
那么如何让咱们的代理服务器知道哪些服务器是能够去干活的,并且擅长干什么活呢?这个时候就须要咱们去配置了.shell

编辑nginx.conf文件(注意 upstream {} 配置信息必须在 Server {} 配置的外部,不是 Server {} 的里面)后端

upstream itbsl {# 服务器集群的组名
    server 192.168.3.110:80 weight=1 max_fails=2 fail_timeout=30s;
    server 192.168.3.111:80 weight=1 max_fails=2 fail_timeout=30s;
    #server 服务器的ip:端口号 权重 最大失败次数 最大链接时间
}

说明:缓存

  1. weight的值越大,代表这台服务器办事效率高,老板喜欢,有事了,找他的几率大.
  2. max_fails要说明的是,你找这台服务器办事,叫他2次若是还不理你,你不要对他报以但愿了.
  3. fail_timeout要说的是,给这台服务器一件小事让它办,30s还没办完,算了,不靠谱,不要等了,找其余人吧.

Nginx中的几种负载均衡方式服务器

  1. 轮询(默认)
    每一个请求按时间顺序逐一分配到不一样的后端服务器,若是后端服务器down掉,能自动剔除。
  2. weight
    指定轮询概率,weight和访问比率成正比,用于后端服务器性能不均的状况。
  3. ip_hash
    每一个请求按访问ip的hash结果分配,这样每一个访客固定访问一个后端服务器,能够解决session的问题。
  4. fair(第三方)
    按后端服务器的响应时间来分配请求,响应时间短的优先分配。
  5. url_hash(第三方) 按访问url的hash结果来分配请求,使每一个url定向到同一个后端服务器,后端服务器为缓存时比较有效。
相关文章
相关标签/搜索