Nginx的做用和優勢,這裏沒必要多說,今天主要是nginx負載均衡實驗,把作的步驟記錄下來,做爲一個學習筆記吧,也能夠給你們作下參考。css
1.Nginx安裝
1.下載地址:http://nginx.org/en/download.htmlhtml
2.解壓到後在window的cmd窗口,輸入以下圖所示的命令,進入到nginx目錄,使用「start nginx.exe 」進行nginx的安裝,以下圖所示: nginx
安裝成功後,在「任務管理器」中會看到「nginx.exe」進程。數據庫
3.在瀏覽器地址欄輸入:127.0.0.1,會看到nginx歡迎界面。說明Nginx已經安裝成功。瀏覽器
2.站點搭建及配置服務器
1.搭建兩個iis站點
新建一個站點下只有一個簡單的index頁面,將兩個站點都部署到本機了,分別綁定了8097和8098兩個端口。session
2.修改nginx配置信息,nginx的配置信息,都在nginx.conf ,這個文件中配置。負載均衡
a.修改nginx監聽端口,修改http server下的listen節點值
listen 8096;學習
b.在http節點下添加upstream(服務器集羣),server設置的是集羣服務器的信息,我這裏搭建了兩個站點,配置了兩條信息。spa
#服務器集羣名稱爲test.com
upstream test.com {
server 127.0.0.1: 8097;
server 127.0.0.1: 8098;
}
c.在http節點下找到location節點修改
location / {
root html;
index index.aspx index.html index.htm; #修改主頁爲index.aspx
#其中test.com 對應着upstream設置的集羣名稱
proxy_pass http:// test.com;
#設置主機頭和客戶端真實地址,以便服務器獲取客戶端真實IP
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
修改完成配置文件以後,重啓nginx服務,
3.運行結果
訪問http://localhost:8096/index.aspx
能夠看到,咱們的請求被分發到了8097站點和8098站點,說明負載均衡搭建成功了。
停掉8098站點,刷新頁面,則請求會分發給8097 站點, 說明其中一個站點掛了,只要還有一個站點是好的,系統仍然可以繼續提供服務。
4.session共享
a.使用數據庫保存session信息,能夠查看本人前一篇文章:數據庫實現多站點共享Session
b.使用nginx將同一ip的請求分配到固定服務器,修改以下。ip_hash會計算ip對應hash值,而後分配到固定服務器,(這個還沒試驗過)
upstream test.com {
server 127.0.0.1: 8097;
server 127.0.0.1: 8098;
ip_hash;
}
c.搭建一臺Redis服務器,對session的讀取都從該Redis服務器上讀取。
注意:nginx做爲負載均衡服務器時候,沒法正常加載css和js這些文件而出現這樣的問題,經過一番搜索和查找,修改nginx下的nginx.conf配置文件才得以正常顯示,修改的配置以下: