tomcat多實例部署的項目實踐
第一種運行多個實例,不同的實例運行不同的業(yè)務,在業(yè)務訪問量小的情況下,可以節(jié)省資源。
第二中運行多個實例,不同的實例運行同一個業(yè)務,在業(yè)務訪問量大的情況下,可以提高訪問速度,實現負載均衡。
如上圖所示,此時把tomcat服務停止,
1.創(chuàng)建項目目錄,測試文件
2.創(chuàng)建實例的安裝目錄
3.準備實例的配置文件
如上圖所示,將tomcat的配置文件向第一個實例和第二個實例的配置文件目錄,都拷貝一份
4.編輯實例的配置文件
如上圖所示,這是對實例配置文件的修改內容。
首先修改實例的端口,隨后修改實例對外提供http服務的端口,
修改實例默認的虛擬主機名稱,修改實例中虛擬主機示例的名稱,修改實例的項目目錄,修改實例的項目日志位置。
5.每個實例要想能單獨啟動,要有一個單獨的實例腳本。準備啟動的實例腳本。
如上圖所示,對于啟動腳本來說,最重要的就是腳本中的環(huán)境變量,如果沒有這個環(huán)境變量,腳本就會默認去tomcat的配置目錄下,去啟動tomcat服務,而不是去啟動實例。
如上圖所示,如果有了這個對應的環(huán)境變量的話,那么就會到實例安裝目錄下去啟動這個實例。
如上圖所示,這個腳本默認就是這個實例的第一個啟動腳本,我們還要給這個腳本添加執(zhí)行權限。
如上圖所示,這是去配置第二個實例的啟動腳本,
6.啟動tomcat實例
如上圖所示,這是去啟動不同tomcat實例的過程,
如上圖所示,這兩個實例,分別占用的端口是8010和8020,這兩個實例對外提供http服務的端口分別是9000和9001
7.nginx實現tomcat反向代理
很少直接讓tomcat服務器去接收客戶端的請求,因為tomcat軟件本身的性能有限。
如上圖所示,這是常見的業(yè)務架構,即客戶端訪問nginx反向代理服務器,由nginx反向代理服務器,轉發(fā)客戶端訪問請求。
如上圖所示,這是在nginx的配置文件中,使用upstream模塊,創(chuàng)建Tomcat server組,用來管理tomcat的兩個實例。
如上圖所示,我們還需要配置虛擬主機的location,即匹配所有的訪問請求,將所有的訪問請求轉發(fā)到后端的tomcat組,然后配置字段,記錄下所有客戶端的IP地址。
如上圖所示,隨后我們去啟動nginx軟件。
如上圖所示,如果想讓tomcat記錄下客戶端的訪問IP地址,我們就需要到tomcat的配置文件中去修改這個%{X-Real-IP}i這樣一個字段。
如上圖所示,tomcat的實例1和實例2都要去做這樣的操作,以保證去記錄下客戶端的IP地址。
如上圖所示,將來客戶端想要訪問tomcat服務器上的數據,只需要直接訪問nginx的虛擬主機名稱:端口號,就可以了,由nginx的軟件實現tomcat多實例的之間的負載均衡。
如上圖所示,此時兩個實例記錄的客戶端的訪問地址也是真實的IP地址。
到此這篇關于tomcat多實例部署的項目實踐的文章就介紹到這了,更多相關tomcat多實例部署內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
tomcat啟動提示Couldn‘t get host name問題
這篇文章主要介紹了tomcat啟動提示Couldn‘t get host name問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2024-06-06解決Tomcat使用shutdown.bat關閉會將其他Tomcat關掉的問題
這篇文章主要介紹了解決Tomcat使用shutdown.bat關閉會將其他Tomcat關掉的問題 ,解決方法很簡單,具體內容詳情大家跟隨小編一起通過本文學習吧2018-10-10web安全—tomcat禁用WebDAV或者禁止不需要的 HTTP 方法
現在主流的WEB服務器一般都支持WebDAV,使用WebDAV的方便性,呵呵,就不用多說了吧,用過VS.NET開發(fā)ASP.Net應用的朋友就應該 知道,新建/修改WEB項目,其實就是通過WebDAV+FrontPage擴展做到的,下面我就較詳細的介紹一下2017-03-03Tomcat在Linux服務器上的BIO、NIO、APR模式設置方法
下面小編就為大家分享一篇Tomcat在Linux服務器上的BIO、NIO、APR模式設置方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2017-12-12