【Nginx】nginx反向代理與tomcat負載均衡
阿新 • • 發佈:2019-01-28
前言
nginx反向代理大大節省了伺服器開支,通過配置多個虛擬主機,使多個服務共同的使用虛擬的80埠。
首先,某個伺服器上有多個tomcat服務,分別佔用一個埠。先看配置檔案。
tomcat服務1
upstream sina{ server 192.168.88.88:8080; } server { listen 80; server_name www.sina.com.cn; location / { proxy_pass http://sina; index index.html index.htm; } error_page 500 502 503 504 /50x.html; location = /50x.html { root html; } }
tomcat服務2
在該伺服器上,搭建了兩個tomcat伺服器,分別佔用了8080和8081埠釋出服務,通過按照域名區分的方式,將請求代理到相應的tomcat服務上,開啟瀏覽器,輸入www.sina.com.cn,就會訪問到8080繫結的服務,同理,訪問www.sohu.com,就會訪問8081繫結的服務,實現了反向代理。upstream sohu{ server 192.168.88.88:8081; } server { listen 80; server_name www.sohu.com; location / { proxy_pass http://sohu; index index.html index.htm; } error_page 500 502 503 504 /50x.html; location = /50x.html { root html; } }
那負載均衡呢,很簡單,所謂負載均衡,其實是tomcat叢集的體現,只需要在配置檔案中。
這樣,當我們訪問www.sohu.com的時候,請求就會被分發到8081和8082兩臺服務中去,當然,還可以設定權重,來設定特定伺服器所承擔的壓力,如8082埠的weight=2,即8082服務承載的壓力是8081埠的二倍。upstream sohu{ server 192.168.88.88:8081; server 192.168.88.88:8082 weight=2; }
總結
這些簡單的配置只是在學習過程中的小筆記,歡迎提出寶貴建議。