反向代理之負載均衡

負載均衡:
一聽這詞不少小夥伴嚇壞了,前人就喜歡搞一些看起來很高大上的詞,好讓後生望而敬畏.那咱們一塊兒來捋一捋. 負載就是負擔. 均衡就是平均分.這樣 一說就是負擔平均分.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定向到同一個後端服務器,後端服務器爲緩存時比較有效。
相關文章
相關標籤/搜索