亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Nginx+Tomcat是如何實現負載均衡的

發布時間:2020-04-15 16:44:10 來源:億速云 閱讀:283 作者:三月 欄目:云計算

億速云的負載均衡(Server Load Balancing)是對多臺云服務器(計算集群)進行流量分發的網絡服務設備。它可以通過流量分發,快速提高應用系統對外的服務能力;隱藏實際服務端口,增強內部系統的安全性;通過消除服務單點故障,提升應用系統的可靠性。今天億速云就給大家介紹下Nginx+Tomcat是如何實現負載均衡的

Nginx+Tomcat是如何實現負載均衡的

首先對知識點了解
  • 集群(Cluster)
    簡單來說就是用N臺云服務器構成一個松耦合的多處理器系統(對外是一個服務器),內部通過網絡實現通信。讓N臺服務器之間相互協作,共同承載一個網站的請求壓力。用知乎上一個作者的話來說就是“同一個業務,部署在多個服務器上”,這就是集群。 集群中比較重要的是任務調度。

  •  負載均衡(Load Balance)
    簡單來說就是根據某種負載策略把請求分發到集群中的每一臺服務器上,讓整個服務器群來處理網站的請求,從而共同完成工作任務。

nginx是一個高性能的HTTP和反向代理服務器,同時也是一個IMAP/POP3/SMTP 代理服務器

  1. 高并發連接:
    官方測試能夠支撐5萬并發連接,在實際生產環境中跑到2~3萬并發連接數。

2.內存消耗少:
在3萬并發連接下,開啟的10個Nginx 進程才消耗150M內(15M*10=150M)。

3.穩定性高:
用于反向代理,宕機的概率微乎其微
4.配置文件非常簡單:
風格跟程序一樣通俗易懂。
5.內置的健康檢查功能:
如果 Nginx Proxy 后端的某臺 Web 服務器宕機了,不會影響前端訪問。
等等優點

由于nginx的性能很好,因此國內很多大公司都在使用,最主要的原因也是nginx是開源免費的。除了上面描述的一系列功能,項目中主要用nginx來實現以下三個功能:

  • 動靜分離
  • 負載均衡
  • 反向代理

動靜分離:
動靜分離的原理非常簡單,我們可以將一些靜態資源html文件、圖片等交給nginx來處理,將后臺請求轉發給后臺服務器處理,由于nginx會有緩存作用,因此這樣不僅僅加快了訪問速度,而且也減小了tomcat服務器的負載。

反向代理:
反向代理(Reverse Proxy)方式是指以代理服務器來接受internet上的連接請求,然后將請求轉發給內部網絡上的服務器,并將從服務器上得到的結果返回給internet上請求連的客戶端,此時代理服務器對外就表現為一個服務器。

負載均衡主要特點:

  • 減輕后臺服務器負載
  • 自動去掉后臺宕機服務器
  • 緩存后臺請求內容,加速請求速度

nginx負載均衡主要策略:

  1. 輪詢(默認)
    每個請求按時間順序逐一分配到不同的后端服務器,如果后端服務器down掉,能自動剔除。
  2. weight
    指定輪詢幾率,weight和訪問比率成正比,用于后端服務器性能不均的情況。
  3. ip_hash
    每個請求按訪問ip的hash結果分配,這樣每個訪客固定訪問一個后端服務器,可以解決session的問題。
  4. fair
    按后端服務器的響應時間來分配請求,響應時間短的優先分配。
  5. url_hash
    按訪問url的hash結果來分配請求,使每個url定向到同一個后端服務器,后端服務器為緩存時比較有效。

默認情況下是輪詢的策略,但是這種方式的使用有一個問題,分布式session不一致的問題,不過我們可以使用ip_hash來將同一ip地址上的請求分配到一臺服務器中處理,這樣就不會出現session不一致的問題。這個問題不是我們這篇文章討論的重點,感興趣的讀者可以自行查詢資料。

配置安裝

需要tomcat和nginx  (前兩章博客有tomcat,nginx詳細的安裝及簡介)

安裝成功后
tomcat配置文件說明
cd /usr/local/tomcat7/conf/
catalina.policy:權限控制配置文件
catalina.properties:tomcat屬性配置文件
server.xml :主配置文件

主配置server.xml文件說明:

<Server port="8005" shutdown="SHUTDOWN">
##表示tomcat關閉端口,默認只對本機地址開放,可以再本機通過telnet 127.0.0.1 8005 對tomcat進行關閉操作
<Connector port="8080" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8443" />
##tomcat 啟動的默認端口號為8080.

<Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />
##tomcat啟動AJP1.3連接器時默認的端口號。

我們可以創建一個新的目錄,來設置默認網頁。

mkdir -p /web/webapp
cd /web/webapp

寫一個jsp的默認網頁
vim index.jsp

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>  
<html>
        <head>
        <title> JSP test1 page</title>
        </head> 
        <body>
        <% out .println("welcom to test sits,http://www.text1.com");%>
        </body>
</html>

#編輯主配置文件
vim server.xml  #添加以下部分內容

     <Host name="localhost"  appBase="webapps"
            unpackWARs="true" autoDeploy="true"
            xmlValidation="false" xmlNamespaceAware="false">
                        以上內容是存在的,添加下面這一條
             <Context docBase="/web/webapp" path="" reloadable="false" >
             </Context>

重新啟動tomcat

/usr/local/tomcat7/bin/shutdown.sh  #關閉
/usr/local/tomcat7/bin/startup.sh   #啟動tomcat

訪問tomcat頁面
Nginx+Tomcat是如何實現負載均衡的

配置好tomcat,在配置nginx
vim /usr/local/nginx/conf/nginx.conf
在nginx.conf配置

在server中添加紅色部分內容(在localtion下添加)
     location / {
            root   html;
            index  index.html index.htm;
            proxy_pass http://tomcat-server; (tomcat-server是一個自定義名稱)
        }

在http段中添加一下內容(最后一行的大括號上邊添加)
  upstream tomcat-server {
                server 192.168.3.101:8080 weight=1;
                server 192.168.3.102:8080 weight=1;
        }

重啟一下nginx
再次訪問(訪問的并不是tomcat,而是nginx,訪問頁面會輪詢出現tomcat的頁面。)
至此,我們就完成了對nginx負載均衡的測試。

如果大家還有什么地方需要了解的可以在億速云官網找我們的專業技術工程師的,億速云技術工程師在行業內擁有十幾年的經驗了,所以會比小編回答的更加詳細專業。億速云官網鏈接www.mlszssj.com

 

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

岚皋县| 迭部县| 察雅县| 盐津县| 铜鼓县| 离岛区| 湖北省| 社会| 龙海市| 林周县| 浑源县| 石渠县| 大同县| 漳浦县| 湛江市| 洛川县| 五峰| 赞皇县| 内丘县| 泗水县| 万山特区| 措美县| 千阳县| 龙川县| 确山县| 丰城市| 时尚| 永登县| 慈利县| 乐安县| 阳泉市| 惠水县| 临湘市| 双城市| 柏乡县| 东源县| 高尔夫| 明光市| 宜兰市| 辽宁省| 蓬莱市|