中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

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

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

Tomcat的虛擬機主機配置與優化配置(實戰!)

發布時間:2020-07-31 20:56:14 來源:網絡 閱讀:266 作者:wx5d2c2d660c282 欄目:系統運維

Tomcat虛擬主機配置

某些時候公司有多個項目同時運行時,一臺服務器不建議運行多個Tomcat服務,需要配置虛擬主機
通過兩個域名訪問到不同的項目內容
步驟:
1.創建www和bbs項目 目錄和文件
2.修改Tomcat主配置文件
3.重啟Tomcat服務
4.測試

Tomcat優化

Tomcat 的缺省配置并不適合生產環境,它會頻繁出現假死現象需要重啟,只有通過不斷壓測優化才能讓它最高效率穩定的運行。優化主要有三方面,分為操作系統優化(內核參數優化),Tomcat 配置文件參數優化,Java 虛擬機(JVM)調優。

Tomcat常用的優化相關參數


【maxThreads】Tomcat 使用線程來處理接收的每個請求,這個值表示 Tomcat 可創建的最
大的線程數,默認值是 200。

【minSpareThreads】最小空閑線程數,Tomcat 啟動時的初始化的線程數,表示即使沒有
人使用也開這么多空線程等待,默認值是 10

【maxSpareThreads】最大備用線程數,一旦創建的線程超過這個值,Tomcat 就會關閉不
再需要的 socket 線程。默認值是-1(無限制)。一般不需要指定

【URIEncoding】指定 Tomcat 容器的 URL 編碼格式,語言編碼格式這塊倒不如其它 Web
服務器軟件配置方便,需要分別指定

【connnectionTimeout】網絡連接超時,單位:毫秒,設置為 0 表示永不超時,這樣設置
有隱患的。通常默認 20000 毫秒就可以

【enableLookups】是否反查域名,以返回遠程主機的主機名,取值為:true 或 false,
如果設置為 false,則直接返回 IP 地址,為了提高處理能力,應設置為 false。

【disableUploadTimeout】上傳時是否使用超時機制。應設置為 true。

【connectionUploadTimeout】上傳超時時間,畢竟文件上傳可能需要消耗更多的時間,
這個根據你自己的業務需要自己調,以使 Servlet 有較長的時間來完成它的執行,需要
與上一個參數一起配合使用才會生效

【acceptCount】指定當所有可以使用的處理請求的線程數都被使用時,可傳入連接請求
的最大隊列長度,超過這個數的請求將不予處理,默認為 100 個。

【compression】是否對響應的數據進行 GZIP 壓縮,off:表示禁止壓縮;on:表示允許
壓縮(文本將被壓縮)、force:表示所有情況下都進行壓縮,默認值為 off,壓縮數據
后可以有效的減少頁面的大小,一般可以減小 1/3 左右,節省帶寬

【compressionMinSize】表示壓縮響應的最小值,只有當響應報文大小大于這個值的時候
才會對報文進行壓縮,如果開啟了壓縮功能,默認值就是 2048

【compressableMimeType】壓縮類型,指定對哪些類型的文件進行數據壓縮。

【noCompressionUserAgents="gozilla, traviata"】對于以下的瀏覽器,不啟用壓縮

如果已經對代碼進行了動靜分離,靜態頁面和圖片等數據就不需要 Tomcat 處理了,那
么也就不需要在 Tomcat 中配置壓縮了。因為這里只有一臺 Tomcat 服務器,而且壓測的是
Tomcat 首頁,會有圖片和靜態資源文件,所以這里啟用壓縮

實驗操作

本次實驗是在Tomcat服務已經安裝完成的情況下進行的,部署安裝Tomcat服務的實驗我上一篇博客已經寫過了。

(1)安裝配置域名解析服務

[root@localhost security]# yum install bind -y
.....................//省略過程
[root@localhost security]# vim /etc/named.conf
options {
        listen-on port 53 { any; };
        listen-on-v6 port 53 { ::1; };
        directory       "/var/named";
        dump-file       "/var/named/data/cache_dump.db";
        statistics-file "/var/named/data/named_stats.txt";
        memstatistics-file "/var/named/data/named_mem_stats.txt";
        recursing-file  "/var/named/data/named.recursing";
        secroots-file   "/var/named/data/named.secroots";
        allow-query     { any; };

[root@localhost security]# vim /etc/named.rfc1912.zones 
zone "abc.com" IN {
        type master;
        file "abc.com.zone";
        allow-update { none; };
};

zone "xyz.com" IN {
        type master;
        file "xyz.com.zone";
        allow-update { none; };
};

[root@localhost security]# cd /var/named/
[root@localhost named]# cp -p named.localhost abc.com.zone
[root@localhost named]# vim abc.com.zone 
$TTL 1D
@       IN SOA  @ rname.invalid. (
                                        0       ; serial
                                        1D      ; refresh
                                        1H      ; retry
                                        1W      ; expire
                                        3H )    ; minimum
        NS      @
        A       127.0.0.1
www IN  A       192.168.52.132
[root@localhost named]# cp -p abc.com.zone xyz.com.zone   #復制abc文件并改名為xyz文件,不做修改
[root@localhost named]# ls
abc.com.zone  data  dynamic  named.ca  named.empty  named.localhost  named.loopback  slaves  xyz.com.zone
[root@localhost named]# 
[root@localhost named]# systemctl start named   #啟動域名解析服務
[root@localhost named]# 
[root@localhost named]# systemctl stop firewalld.service    #關閉防火墻
[root@localhost named]# setenforce 0   #關閉增強型安全功能

(2)創建 abc 和 xyz 項目目錄和文件

[root@localhost named]# cd /usr/local/tomcat/
[root@localhost tomcat]# mkdir /usr/local/tomcat/webapps/abc   #創建abc站點目錄
[root@localhost tomcat]# echo "This is abc page\!" > /usr/local/tomcat/webapps/abc/index.jsp   #編輯abc首頁
[root@localhost tomcat]# mkdir /usr/local/tomcat/webapps/xyz   #創建xyz站點目錄
[root@localhost tomcat]# echo "This is xyz page\!" > /usr/local/tomcat/webapps/xyz/index.jsp   #編輯xyz首頁
[root@localhost tomcat]# 

(3)修改 Tomcat 主配置文件server.xml

[root@localhost tomcat]# vim /usr/local/tomcat/conf/server.xml 
#定義www.abc.com虛擬主機配置
      <Host name="www.abc.com"  appBase="/usr/local/tomcat/webapps" unipackWARs="true" autoDeploy="true" xmlValidation="false" xmlNamespaceAware="false">
        <Context docBase="/usr/local/tomcat/webapps/abc" path="" reloadable="true" />
      </Host>
#定義www.xyz.com虛擬主機配置
      <Host name="www.xyz.com"  appBase="/usr/local/tomcat/webapps" unipackWARs="true" autoDeploy="true" xmlValidation="false" xmlNamespaceAware="false">
        <Context docBase="/usr/local/tomcat/webapps/xyz" path="" reloadable="true" />
      </Host>

[root@localhost tomcat]# /usr/local/tomcat/bin/shutdown.sh    #關閉服務
Using CATALINA_BASE:   /usr/local/tomcat
Using CATALINA_HOME:   /usr/local/tomcat
Using CATALINA_TMPDIR: /usr/local/tomcat/temp
Using JRE_HOME:        /usr/java/jdk1.8.0_201-amd64
Using CLASSPATH:       /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar
[root@localhost tomcat]# /usr/local/tomcat/bin/startup.sh     #開啟服務
Using CATALINA_BASE:   /usr/local/tomcat
Using CATALINA_HOME:   /usr/local/tomcat
Using CATALINA_TMPDIR: /usr/local/tomcat/temp
Using JRE_HOME:        /usr/java/jdk1.8.0_201-amd64
Using CLASSPATH:       /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar
Tomcat started.
[root@localhost tomcat]#
name="www.kgc.com"      #定義虛擬主機名
appBase="/usr/local/tomcat/webapps"   #指定站點文件路徑
unpackWARs="true"     #開啟war包的更新
autoDeploy="true"     #開啟自動部署
xmlValidation="false"    #關閉xml驗證
xmlNamespaceAware="false"    #關閉xml命名空間
docBase="/usr/local/tomcat/webapps/kgc"    #指定網頁站點路徑
path="" reloadable="true"   #指定path默認加載的類與reloadable監視類的開啟

(4)瀏覽測試網頁

1.使用瀏覽器訪問 http://www.abc.com:8080 頁面顯示This is abc page

Tomcat的虛擬機主機配置與優化配置(實戰!)

2.使用瀏覽器訪問 http://www.xyz.com:8080 頁面顯示This is xyz page

Tomcat的虛擬機主機配置與優化配置(實戰!)

(5)優化Tomcat

1.未優化前使用apache-jmeter先壓測一下

Tomcat的虛擬機主機配置與優化配置(實戰!)

2.修改主配置文件server.xml

[root@localhost tomcat]# vim /usr/local/tomcat/conf/server.xml 
<Connector port="8080" protocol="HTTP/11.1" 
# 默認端口8080以及http協議
connectionTimeout="20000" 
#連接超時20秒
redirectPort="8443" 
#HTTPS協議號
minSpareThreads="50" 
#最小空閑進程50個
enableLookups="false" 
#不開啟反向查找
disableUploadTimeout="true" 
#上傳超時
acceptCount="300" 
#等待隊列為300
maxThreads="500" 
#最大進程數為500
processorCache="500"
#緩存對象序列為500
URIEncoding="UTF-8" 
#字符集支持中文
compression="on" 
#開啟壓縮功能
compressionMinSize="2048" 
#壓縮最小閾值為2048
compressableMimeType="text/html,text/xml,text/javascript,text/css,text/plain,image/gif,image /jpg,image/png"/>
#支持的壓縮類型
[root@localhost tomcat]# shutdown.sh    #關閉服務
Using CATALINA_BASE:   /usr/local/tomcat
Using CATALINA_HOME:   /usr/local/tomcat
Using CATALINA_TMPDIR: /usr/local/tomcat/temp
Using JRE_HOME:        /usr/java/jdk1.8.0_201-amd64
Using CLASSPATH:       /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar
[root@localhost tomcat]# startup.sh    #開啟服務
Using CATALINA_BASE:   /usr/local/tomcat
Using CATALINA_HOME:   /usr/local/tomcat
Using CATALINA_TMPDIR: /usr/local/tomcat/temp
Using JRE_HOME:        /usr/java/jdk1.8.0_201-amd64
Using CLASSPATH:       /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar
Tomcat started.
[root@localhost tomcat]# 

3.再次壓測優化后的Tomcat

Tomcat的虛擬機主機配置與優化配置(實戰!)

向AI問一下細節

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

AI

枞阳县| 五莲县| 印江| 霍州市| 墨玉县| 承德市| 永寿县| 咸阳市| 灵宝市| 绥芬河市| 二连浩特市| 大田县| 巴林左旗| 左权县| 广宁县| 苏尼特右旗| 定结县| 土默特右旗| 南投市| 平和县| 卢氏县| 右玉县| 瓦房店市| 营山县| 县级市| 孝义市| 兖州市| 西昌市| 桂阳县| 临海市| 新乡市| 开封市| 东海县| 永新县| 涡阳县| 特克斯县| 华阴市| 扶绥县| 西乌珠穆沁旗| 舟曲县| 伊宁市|