Nginx+Tomcat高性能負載均衡集羣搭建

轉載請註明出處:http://www.cnblogs.com/Joanna-Yan/p/8745794.html html

Nginx是一個高性能的HTTP服務器/反向代理服務器及電子郵件(IMAP/POP3)代理服務器。其佔有內存少,併發能力強,在同類型的網頁服務器中表現較好。Nginx能夠在大多數Unix Linux OS上編譯運行,並有Windows移植版。通常狀況下,對於新建站點,建議使用最新穩定版做爲生產版本。nginx

單個Tomcat最大支持在線訪問是500左右,要通知支持更多的訪問量一個Tomcat就無法作到了。在這裏咱們採用集羣部署方式,使用多個Tomcat,反向代理使用Nginx。apache

架構以下:tomcat

準備工做

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服務器」的可能性會大一些。

若是此文對您有幫助,微信打賞我一下吧~

相關文章
相關標籤/搜索