iis+nginx如何實現負載均衡

目的:把用戶的請求分到各個服務器減輕壓力。nginx把監聽的端口的請求平均轉到布署了網站的服務器。

一、windows上安裝nginx

1.官網下載windows版的nginx

目前最新版本為1.13.2

iis+nginx如何實現負載均衡

iis+nginx如何實現負載均衡

2.下載解壓后

iis+nginx如何實現負載均衡

3.因為我電腦80端口已經被使用,所以修改配置文件改為監聽8080端口

iis+nginx如何實現負載均衡

4.雙擊主程序運行,可以看到nginx已經在進程里面運行了。

iis+nginx如何實現負載均衡

5.嘗試打開 http://localhost:8080/ 出現以下,就說明nginx安裝成功了

iis+nginx如何實現負載均衡

二、搭建兩個相同站點

1. 網站只有一個主頁

public?class?homecontroller?:?controller ?{ ?//?get:?home ?public?actionresult?index() ?{ ??list<string>?info?=?new?list<string>(); ??info.add("服務器名稱:"?+?server.machinename); ??info.add("客戶端ip地址:"?+?(request.userhostaddress=="::1"???"127.0.0.1":request.userhostaddress)); ??info.add("http端口:"?+?request.url.port); ??viewbag.info?=?info; ??return?view(); ?} ?}</string></string>

2. 因為我的nginx是裝在虛擬機里的,現在虛擬機里在iis部署一個站點,端口為:9000

iis+nginx如何實現負載均衡

3.本機布署一個站點,端口為:9001

iis+nginx如何實現負載均衡

三、修改nginx配置文件

1.在http節點下添加upstream(服務器集群),server設置的是集群服務器的信息,我這里搭建了兩個站點,配置了兩條信息。

iis+nginx如何實現負載均衡

2.在http節點下找到location節點修改

location / {
root html;
index home/index index.html index.htm; #修改主頁為home/index
#其中jq_one 對應著upstream設置的集群名稱
proxy_pass http://jq_one;
#設置主機頭和客戶端真實地址,以便服務器獲取客戶端真實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;
}

修改后的配置文件:

iis+nginx如何實現負載均衡

3.重啟nginx

iis+nginx如何實現負載均衡

輸入命令 nginx -s reload 回車

iis+nginx如何實現負載均衡

完成重啟

四、驗證

嘗試訪問監聽的8080端口,刷新幾次看

iis+nginx如何實現負載均衡

iis+nginx如何實現負載均衡

五、把nginx弄成服務,開機啟動

1.借助一個小工具winsw

下載簡單配置和.net環境兩個文件,根據自己環境,這里下的.net4

iis+nginx如何實現負載均衡

然后放到隨便一個目錄,這里放到和nginx一起,并把兩個文件改成相同的名字

iis+nginx如何實現負載均衡

2.修改配置文件

iis+nginx如何實現負載均衡

3.安裝服務

iis+nginx如何實現負載均衡

輸入命令 myapp.exe install 安裝服務

iis+nginx如何實現負載均衡

此時服務中已經有nginx了,然后啟動服務即可

iis+nginx如何實現負載均衡

? 版權聲明
THE END
喜歡就支持一下吧
點贊5 分享