亚洲免费在线视频-亚洲啊v-久久免费精品视频-国产精品va-看片地址-成人在线视频网

您的位置:首頁技術文章
文章詳情頁

tomcat優化配置小結

瀏覽:2日期:2023-09-11 20:46:57
目錄1修改Tomcat的內存配置,打開$TOMCAT_HOME/bin/catalina.sh文件2 連接數優化,主要是在conf/server.xml配置文件中進行修改。2.1、優化線程數2.2、使用線程池3 tomcat connector三種運行模式(BIO,NIO,APR)3.1、三種模式比較3.2、apr模式4 并發配置優化5 tomcat配置優化6 執行器優化(線程池)7 禁用AJP連接器8 配置優化8.1 Connector 優化8.2 線程池 8.3 Listener 9 設置Tomcat的編碼10 設置Tomcat的熱部署11 修改Tomcat命令窗口的名字1修改Tomcat的內存配置,打開$TOMCAT_HOME/bin/catalina.sh文件

內存優化:

-server參數:表示以服務模式啟動,啟動速度會稍微慢一點,但性能會高很多。不加這個參數,默認是以客戶端模式啟動。 -server:啟用jdk的server版本-XX:PermSize:設置非堆內存初始值,默認是物理內存的1/64。-XX:MaxNewSize:新生代占整個堆內存的最大值。-XX:MaxPermSize:Perm(俗稱方法區)占整個堆內存的最大值,也稱內存最大永久保留區域

1)錯誤提示:java.lang.OutOfMemoryError:Java heap space

set JAVA_OPTS=-Xms512m-Xmx512m

2)錯誤提示:java.lang.OutOfMemoryError: PermGenspace

setJAVA_OPTS=-XX:PermSize=128M2 連接數優化,主要是在conf/server.xml配置文件中進行修改。2.1、優化線程數

增加maxThreads和acceptCount屬性(使acceptCount大于等于maxThreads)

maxThreads:tomcat可用于請求處理的最大線程數,默認是200minSpareThreads:tomcat初始線程數,即最小空閑線程數maxSpareThreads:tomcat最大空閑線程數,超過的會被關acceptCount:當所有可以使用的處理請求的線程數都被使用時,可以放到處理隊列中的請求數,超過這個數的請求將不予處理.默認100

2.2、使用線程池

在server.xml中增加executor節點,然后配置connector的executor屬性

namePrefix:線程池中線程的命名前綴maxThreads:線程池的最大線程數minSpareThreads:線程池的最小空閑線程數maxIdleTime:超過最小空閑線程數時,多的線程會等待這個時間長度,然后關閉threadPriority:線程優先級

當tomcat并發用戶量大的時候,單個jvm進程確實可能打開過多的文件句柄,這時會報java.net.SocketException:Too many open files錯誤??墒褂孟旅娌襟E檢查:

ps -ef |grep tomcat 查看tomcat的進程ID,記錄ID號,假設進程ID為10001

lsof -p 10001|wc -l 查看當前進程id為10001的 文件操作數

使用命令:ulimit -a 查看每個用戶允許打開的最大文件數

3 tomcat connector三種運行模式(BIO,NIO,APR)3.1、三種模式比較

1)BIO:一個線程處理一個請求。缺點:并發量高時,線程數較多,浪費資源。Tomcat7或以下在Linux系統中默認使用這種方式

2)NIO:利用Java的異步IO處理,可以通過少量的線程處理大量的請求。Tomcat8在Linux系統中默認使用這種方式。Tomcat7必須修改Connector配置來啟動(conf/server.xml配置文件):

<Connectorport='8080'protocol='org.apache.coyote.http11.Http11NioProtocol' connectionTimeout='20000'redirectPort='8443'/>

3)APR(Apache Portable Runtime):從操作系統層面解決io阻塞問題。Linux如果安裝了apr和native,Tomcat直接啟動就支持apr。

3.2、apr模式

安裝apr以及tomcat-native

yum -y install

make && make install

安裝成功后還需要對tomcat設置環境變量,方法是在catalina.sh文件中增加1行

修改8080端對應的conf/server.xml

4 并發配置優化

Tomcat的并發請求處理數量=maxThreads + acceptCount

enableLookups:如果為true,調用request.getRemoteHost會執行DNS反查,反向解析IP對應的域名或主機,效率較低,建議設為false。

5 tomcat配置優化

6 執行器優化(線程池)

Executor重要參數說明:

name:共享線程池的名字。這是Connector為了共享線程池要引用的名字,該名字必須唯一。默認值:None;namePrefix:在JVM上,每個運行線程都可以有一個name 字符串。這一屬性為線程池中每個線程的name字符串設置了一個前綴,Tomcat將把線程號追加到這一前綴的后面。默認值:tomcat-exec-;maxThreads:該線程池可以容納的最大線程數。默認值:200;maxIdleTime:在Tomcat關閉一個空閑線程之前,允許空閑線程持續的時間(以毫秒為單位)。只有當前活躍的線程數大于minSpareThread的值,才會關閉空閑線程。默認值:60000(一分鐘)。minSpareThreads:Tomcat應該始終打開的最小不活躍線程數。默認值:25。threadPriority:線程的等級。默認是Thread.NORM_PRIORITY

Connector重要參數說明:

executor:表示使用該參數值對應的線程池;minProcessors:服務器啟動時創建的處理請求的線程數;maxProcessors:最大可以創建的處理請求的線程數;acceptCount:指定當所有可以使用的處理請求的線程數都被使用時,可以放到處理隊列中的請求數,超過這個數的請求將不予處理。

7 禁用AJP連接器

我們一般是使用Nginx+tomcat的架構,所以用不著AJP協議,所以把AJP連接器禁用

8 配置優化8.1 Connector 優化<Connector port='8080' protocol='HTTP/1.1' maxThreads='1000' minSpareThreads='100' acceptCount='1000' maxConnections='1000' connectionTimeout='20000' maxHttpHeaderSize='8192' tcpNoDelay='true' compression='on' compressionMinSize='2048' disableUploadTimeout='true' redirectPort='8443'enableLookups='false' URIEncoding='UTF-8' />8.2 線程池

Executor代表了一個線程池,可以在Tomcat組件之間共享。使用線程池的好處在于減少了創建銷毀線程的相關消耗,而且可以提高線程的使用效率。

<Executor name='tomcatThreadPool' namePrefix='catalina-exec-' maxThreads='1000' minSpareThreads='100' maxIdleTime='60000' maxQueueSize='Integer.MAX_VALUE' prestartminSpareThreads='false' threadPriority='5' className='org.apache.catalina.core.StandardThreadExecutor'/>8.3 Listener

Server標簽中可以配置多個Listener,其中 JreMemoryLeakPreventionListener是用來預防JRE內存泄漏。此Listener只需在Server標簽中配置即可,默認情況下無需配置,已經添加在 Server中。

<Listener className='org.apache.catalina.core.JreMemoryLeakPreventionListener' /> 9 設置Tomcat的編碼

10 設置Tomcat的熱部署

docBase:項目所在路徑,可以使用絕對路徑或相對路徑,相對路徑是相對于webapps ;

path:訪問項目的路徑;

reloadable:是否自動加載新增或改變的class文件;

11 修改Tomcat命令窗口的名字

在運行多個tomcat窗口的時候,可以通過修改tomcat命令窗口的名字來區分不同的tomcat;

到此這篇關于tomcat優化配置小結的文章就介紹到這了,更多相關tomcat優化配置內容請搜索好吧啦網以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持好吧啦網!

標簽: Tomcat
主站蜘蛛池模板: 3级黄色 | 亚洲高清视频在线 | 在线一区播放 | 99在线热视频只有精品免费 | 日本大黄网站 | 特级毛片永久久免费观看 | 性猛交毛片 | 一本伊大人香蕉高清在线观看 | 中国精品视频一区二区三区 | 成人高清无遮挡免费视频软件 | 在线视频 日韩 | 九九视频免费在线观看 | 午夜精品久久久久久91 | 波多野结衣3女同在线观看 波多野结衣aⅴ在线 | 正在播放国产精品放孕妇 | 成年午夜一级毛片视频 | 欧美曰批人成在线观看 | 黄www片 | 亚洲gogo人体大胆西西安徽 | 亚洲精品一区二区三区www | 亚洲天堂2016 | 亚洲黄色性视频 | 一本本久综合久久爱 | 中文字幕一区二区三区在线观看 | 成人国产午夜在线视频 | 免费一级特黄欧美大片勹久久网 | 国产一区在线播放 | 成人永久福利在线观看不卡 | 中国一级毛片aaa片 中国一级毛片录像 | 久久不射网 | 国产99精品免费视频看6 | 她也啪在线视频精品网站 | 国产一区二区三区四区五区 | 黄色美女网站免费看 | 国产精品自在线 | 男人天堂avav | 手机毛片 | 欧美成人三级伦在线观看 | 亚洲成人免费观看 | 欧美线在线精品观看视频 | 国产伦精品一区二区三区免费 |