Nginx在Windows平台的配置:
- 2020 年 4 月 10 日
- 筆記
Nginx在Windows平台的配置:
Nginx的概述:
什麼是Nginx:

使用Nginx完成負載均衡:
完成Nginx負載均衡,那麼需要先來介紹Tomcat的安裝和配置,我們首先要來配置Tomcat完成集群的配置.因為我們沒有多台伺服器運行Tomcat.那麼我們可以模擬在一台伺服器上運行多個Tomcat程式.
使用Tomcat配置Tomcat集群:
步驟一:下載Tomcat:http://tomcat.apache.org/download-70.cgi

步驟二:安裝和配置Tomcat:直接將下載後的Tomcat解壓在本地磁碟:解壓兩個分別命名為tomcat1和tomcat2.配置tomcat環境變數:

分別完成如下配置:(需要將tomcat帶有埠號的地方改成不同的埠即可.)分別打開兩個tomcat的conf下的server.xml

Nginx的安裝和部署:Nginx的安裝:
將nginx-1.8.0.zip解壓包某個盤符下運行:目錄結構如下:

雙擊nginx.exe即可運行:打開瀏覽器http://localhost:80顯示如下頁面:

說明安裝成功!!!關閉nginx需要使用:相當於找到nginx進程kill nginx -s stop.重新載入配置文件:nginx -sreload可以不關閉nginx的情況下更新配置文件.
Nginx的負載均衡的配置:
打開C:nginx-1.8.0confnginx.conf這個文件:

Weight可以修該伺服器的權重
Server 127.0.0.1:8080 weight=10;
Server 127.0.0.1:8081 weight=5;
修改:C:WindowsSystem32driversetchosts文件:
***** 通過以上的配置我們已經可以通過訪問www.taoge.com訪問到不同的tomcat來分擔伺服器端的壓力.請求負載過程中會話資訊不能丟失.那麼需要在多個tomcat中session需要共享.
* 配置Tomcat的session共享可以有三種解決方案:第一種是以負載均衡伺服器本身提供的session共享策略,每種服務期的配置是不一樣的並且nginx本身是沒有的。第二種是利用web容器本身的session共享策略來配置共享。針對於weblogic這種方式還是靠普的。但是針對於tomcat這種方式存在很大的缺陷,主要因為是依靠廣播方式來實現的session複製,會浪費很多頻寬導致整個網路反映緩慢。官網也建議這種方式最好不要超過4台tomcat,具體的內容可參考/webapps/docs/cluster-howto.html裡面有詳細的說明。下面是具體的配置過程第三種是Tomcat集群+redis的Session共享配置方法.
在這裡我們以第二種方式為例:
配置Tomcat中session的共享:
步驟一:修改server.xml文件,最簡單的集群配置只需要將節點中注釋掉的下面這句取消注釋即可:
Xml程式碼:
<ClusterclassName="org.apache.catalina.ha.tcp.SimpleTcpCluster"/>
使用這樣方法配置的集群會將Session同步到所在網段上的所有配置了集群屬性的實例上(此處講所在網段可能不準確,是使用Membership 的address和port來區分的。tomcat集群的實例如果在Membership配置中有相同的address和port值的tomcat被分到同一個集群裡邊。他們的session是相互共享的,同一個session的集群被稱為一個cluster。可以配置多個cluster,但是cluster和cluster之間的session是不共享的)。也就是說如果該廣播地址下的所有Tomcat實例都會共享Session,那麼假如有幾個互不相關的集群,就可能造成Session複製浪費,所以為了避免浪費就需要對節點多做點設置了,如下:
Xml程式碼
<ClusterclassName="org.apache.catalina.ha.tcp.SimpleTcpCluster"> <ChannelclassName="org.apache.catalina.tribes.group.GroupChannel"> <Membership className="org.apache.catalina.tribes.membership.McastService" address="228.0.0.4" port="45564" frequency="500" dropTime="3000"/> </Channel> </Cluster>
加了一個Channel,裡面包了個Membership,咱們要關注的就是membership的port屬性和address屬性,不同的集群設置不同的port值或address值,從目前的使用來看,基本上是隔離開了。
步驟二:修改項目的web.xml文件:
web.xml文件的修改很簡單:只需要在節點中添加這個節點<distributable/>就可以了。
OK,有了這二步就實現了Tomcat的集群和Session的共享了。