Nginx實現反向代理及負載均衡簡單示例(wimdows)

 一, Nginx主要作用:

     1. 反向代理

     2. 負載均衡

     3. Http服務器(包含動靜分離)

     4. 正向代理

    反向代理應該是Nginx做的最多的一件事了,什麼是反向代理呢,以下是百度百科的說法:反向代理(Reverse Proxy)方式是指以代理服務器來接受internet上的連接請求,然後將請求轉發給內部網絡上的服務器,並將從服務器上得到的結果返回給internet上請求連接的客戶端,此時代理服務器對外就表現爲一個反向代理服務器。簡單來說就是真實的服務器不能直接被外部網絡訪問,所以需要一臺代理服務器,而代理服務器能被外部網絡訪問的同時又跟真實服務器在同一個網絡環境,當然也可能是同一臺服務器,端口不同而已。

負載均衡也是Nginx常用的一個功能,負載均衡其意思就是分攤到多個操作單元上進行執行,例如Web服務器、FTP服務器、企業關鍵應用服務器和其它關鍵任務服務器等,從而共同完成工作任務。簡單而言就是當有2臺或以上服務器時,根據規則隨機的將請求分發到指定的服務器上處理,負載均衡配置一般都需要同時配置反向代理,通過反向代理跳轉到負載均衡。

    如下圖:

二,搭建Nginx+Tomcat集羣步驟

1. 下載安裝

和tomcat一樣,下載壓縮包,解壓即可。Nginx1.12.2目錄如下:

2. 啓動,停止等操作命令

通過DOS命令啓動 start nginx 或者 直接點擊nginx.exe啓動

啓動成功,如下:

訪問,未修改配置文件前,默認是 localhost:80

即,nginx安裝成功並正常啓動訪問。

停止nginx (nginx -s stop):

 

3. 修改配置文件

進入conf目錄下,修改配置文件nginx.conf

修改前:

修改後:

保存修改文件。即,訪問localhost:80即會路由到localhost:8085(本地tomcat) 或www.leilei.ink:8080(阿里雲tomcat),兩tomcat版本不同,可通過版本區分。

4. 再次啓動nginx

5. 測試

先確定localhost:8085和www.leilei.ink:8080能夠正常訪問,如下:

本地tomcat 版本號爲7.0.79

阿里雲tomcat版本號7.0.82

通過nginx反向代理實現負載均衡,即,訪問localhost:80 即可路由分發到localhost:8085或www.leilei.ink:8080,如下:

路由到本地tomcat服務器(7.0.79版本)

路由到阿里雲tomcat服務器(7.0.82版本)

即,nginx成功的將請求分發到了本地的tomcat服務器及阿里雲tomcat服務器上。

在項目中,爲了應對高併發,通常採用搭建集羣的方式來實現負載均衡,如:持久層提高數據庫吞吐量的mysql集羣,緩存層減少數據庫操作提高熱數據讀取效率的redis集羣,服務層的一個服務多個實例等。以上是Nginx+Tomcat集羣實現web層的負載均衡的簡單示例,和大家一起分享交流,有不妥之處,望多多指教!

參考網址: https://mp.weixin.qq.com/s/bkxW17WFHx0CaWd2GNY5fw

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章