11选5爱彩乐山西|快三爱彩乐官网
  • 當前位置: 主頁 > Linux安裝教程 > 環境部署 >

    Nginx反向代理、負載均衡、頁面緩存、URL重寫及讀寫分離詳解

    時間:2015-12-28 13:38來源:未知 作者:Linux先生 舉報 點擊:
    負載均衡模塊用于從”upstream”指令定義的后端主機列表中選取一臺主機。nginx先使用負載均衡模塊找到一臺主機,再使用upstream模塊實現與這臺主機的交互。為了方便介紹負載均衡模塊,做到言之有物,以下選取nginx內置的ip hash模塊作為實際例子進行分析。

    負載均衡模塊 (100%)

    負載均衡模塊用于從”upstream”指令定義的后端主機列表中選取一臺主機。nginx先使用負載均衡模塊找到一臺主機,再使用 upstream模塊實現與這臺主機的交互。為了方便介紹負載均衡模塊,做到言之有物,以下選取nginx內置的ip hash模塊作為實際例子進行分析。

    配置

    要了解負載均衡模塊的開發方法,首先需要了解負載均衡模塊的使用方法。因為負載均衡模塊與之前書中提到的模塊差別比較大,所以我們從配置入手比較容易理解。

    在配置文件中,我們如果需要使用ip hash的負載均衡算法。我們需要寫一個類似下面的配置:

    upstream test {
        ip_hash;
    
        server 192.168.0.1;
        server 192.168.0.2;
    }

    從配置我們可以看出負載均衡模塊的使用場景: 1. 核心指令”ip_hash”只能在upstream {}中使用。這條指令用于通知nginx使用ip hash負載均衡算法。如果沒加這條指令,nginx會使用默認的round robin負載均衡模塊。請各位讀者對比handler模塊的配置,是不是有共同點? 2. upstream {}中的指令可能出現在”server”指令前,可能出現在”server”指令后,也可能出現在兩條”server”指令之間。各位讀者可能會有疑問, 有什么差別么?那么請各位讀者嘗試下面這個配置:

    upstream test {
        server 192.168.0.1 weight=5;
        ip_hash;
        server 192.168.0.2 weight=7;
    }

    神奇的事情出現了:

    nginx: [emerg] invalid parameter "weight=7" in nginx.conf:103
    configuration file nginx.conf test failed

    可見ip_hash指令的確能影響到配置的解析。

    推薦內容
  • 11选5爱彩乐山西