1. 程式人生 > >在Nginx中如何實現負載均衡?

在Nginx中如何實現負載均衡?

    很多時候,在技術或者其他原因下,我們無法通過對程式碼的優化來提高網站訪問的速度,這時候,我們就會使用到負載均衡。
    這裡,我們會講到nginx的幾種主要的負載均衡的策略(關於nginx的安裝和如何利用nginx進行轉發,新馬娛樂城之前已經有文章了,這裡就只是簡單的提供負載均衡的配置。另:負載均衡會導致session問題,解決辦法請看之前的文章)
    1、輪詢(預設方式)
    顧名思義,這是一種輪流訪問所有伺服器的方式。這種方式為預設配置,優點是簡潔。缺點也很明顯,不能進行最優化排程,有可能有的請求需要的耗時較久。
    在http區域裡新增:
    upstream demo{
    server 192.168.1.1:8888;
    server 192.168.1.2:8888;
    }
    在你的某個做轉發的server裡新增:
    proxy_pass http://demo;
    2、加權輪詢
    這種方式是對輪詢的改進,加入了權值的概念。
    upstream demo{
    server 192.168.1.1:8888 weight=1;
    server 192.168.1.2:8888 weight=2;
    }
    Weight值越高,連結分配的機率越高。
    3、ip_hash(基於ip的hash分配策略)
    這是一種非輪詢的方式,對於每個到達的請求,直接通過其請求的IP進行雜湊的對映。可以解決負載均衡中session的問題。
    upstream demo{
    ip_hash;
    server 192.168.1.1:8888;
    server 192.168.1.2:8888;
    }
    4、基於服務響應式
    這種方式是根據伺服器端的動態響應,對每一個請求進行分配。這種方式能夠自動根據當前的後端實際負載來優化。
    upstream demo{
    server 192.168.1.1:8888;
    server 192.168.1.2:8888;
    fair;

    }

   閱讀推薦:http://blog.linkshop.com.cn/u/69080/284175.html