Nginx+Tomcat高性能負載均衡集群搭建
轉載請註明出處:http://www.cnblogs.com/Joanna-Yan/p/8745794.html
Nginx是一個高性能的HTTP服務器/反向代理服務器及電子郵件(IMAP/POP3)代理服務器。其占有內存少,並發能力強,在同類型的網頁服務器中表現較好。Nginx可以在大多數Unix Linux OS上編譯運行,並有Windows移植版。一般情況下,對於新建站點,建議使用最新穩定版作為生產版本。
單個Tomcat最大支持在線訪問是500左右,要通知支持更多的訪問量一個Tomcat就沒法做到了。在這裏我們采用集群部署方式,使用多個Tomcat,反向代理使用Nginx。
架構如下:
準備工作
apache-tomcat-7.0.61
nginx-1.12.2
Redis-x64-3.2.100
為簡化示例,這裏只講Nginx+Tomcat的部署與集成。
Nginx安裝
(1)去官網下載Windows的最新穩定版Nigx(我用的1.12.2版本)。官網
(2)解壓到磁盤任意目錄。這裏我解壓在 F:\nginx-1.12.2
(3) 啟動服務: start nginx.exe
停止服務:nginx -s stop
重新加載配置:nginx -s reload
修改nginx.conf
1.進程數與每個進程的最大連接數
- nginx進程數,建議設置為等於CPU總核心數
- 單個進程最大連接數。那麽該服務器的最大連接數=連接數*進程數
2.Nginx的基本配置
- 監聽端口一般都為http端口:80
- 域名可以有多個,用空格隔開。例如server_name www.sohu.com baidu,com
3.負載均衡列表基本配置
- location / {} :對什麽樣的後綴進行負載均衡請求,假如我們要對所有的aspx後綴的文件進行負載均衡時,可以這樣寫:location ~.*\.aspx${}
- proxy_pass:請求轉向自定義的服務器列表,這裏我們將請求都轉向標識為http://joannayan.com的負載均衡服務器列表。
- weight權重,權值越高被分配的幾率越大。可以根據機器配置定義權重(如果某臺服務器的硬件配置很好,可以處理更多的請求,那麽可以為其設置一個較高的weight;而有一臺的服務器的硬件配置比較差,那麽可以將前一臺的weight配置為weight=2,後一臺差的配置為weight=1)。
測試
分別向兩臺機器的Tomcat服務器中部署TestNginx.war這個Web項目(為了區分訪問的是不同的Web服務器,兩機器中部署的TestNginx這個項目在頁面顯示上略有不同)。
啟動啟動兩機器上的Tomcat,並啟動nginx.
訪問nginx:http://localhost/TestNginx
刷新,再訪問:
由於權重的不同,在不斷刷新頁面的過程中,顯示“5.20服務器”的可能性會大一些。
如果此文對您有幫助,微信打賞我一下吧~
Nginx+Tomcat高性能負載均衡集群搭建