Tomcat常用調優技巧

2022-04-11 22:32:36 字數 1467 閱讀 6783

本文是就tomcat 4為基礎向大家介紹web容器調優的,因為許多朋友安裝好之後就開始正式上線,很少有人以使用者現場為基礎對伺服器進行調優。如果併發量小,系統可能不會出問題,但是併發量大時,系統反應速度迅速下降,由於不了解原因,因此大家還拼命在自己的應用中尋找問題,從而浪費了寶貴的現場時間。但是tomcat如何調優呢?

其實真正的web容器調優是需要許多方面的知識的,你必須了解網路+硬體+os+jvm+web容器,但是這篇文章無法講解那麼多,而應用伺服器本身也有些調優的基本原則,下文就會給予介紹。

先在tomcat安裝目錄中找到conf子目錄,然後再開啟web.xml檔案,搜尋附件a中的內容,可能會有些不同。不同的地方就是需要修改的部分。

1. 遮蔽dns查詢。

web應用程式可以通過web容器提供的getremotehost()方法獲得訪問web應用客戶的ip位址和名稱,但是這樣會消耗web容器的資源,並且還需要通過ip位址和dns伺服器反查使用者的名字,因此當系統上線時,可以將這個屬性關閉,從而減少資源消耗,那麼web應用也就只能記錄下ip位址了。修改的屬性是enableloopups="false"

2. 調整執行緒數。

tomcat通過執行緒池來為使用者訪問提供響應,對於上線的系統初步估計使用者併發數量後,然後調整執行緒池容量。例如:使用者併發數量大約在100左右。那麼可以設定minprocessors="100" maxprocessors="100",將最大和最小設定為一樣後,執行緒池不會再釋放空閒的執行緒,使使用者訪問突然增加的時候,不需要再消耗系統資源去建立新的執行緒。

3. 調整最大連線數

這個其實最複雜,即使使用者併發量大,但是系統反應速度快的話,可以把這個值不用設定太高,高了系統需要消耗大量的資源去切換執行緒,但是如果設定太低也會造成應用無法滿足使用者併發需要。因此設定這個最好能夠結合整個系統的跟蹤與調優,使系統達到最好的平穩狀態。一般設定為maxprocessors的1.5倍就可以了。

4. 調整網路超時。

主要是http協議也有個連線過程,客戶端連線到伺服器上後,多長時間沒有得到處理就會被釋放。如果伺服器處理速度較慢,但是希望每個使用者都能得到有效處理,或者網路環境不好,需要保證使用者不會因為超時會斷,也可以把時間加長。但是一般設定成connectiontimeout="30000"就可以了。太長對系統來說價值不大,反而會浪費系統資源在無謂的長連線上。

附件a。

在tomcat配置檔案server.xml中的配置中,和連線數相關的引數有:

minprocessors:最小空閒連線線程數,用於提高系統處理效能,預設值為10

maxprocessors:最大連線線程數,即:併發處理的最大請求數,預設值為75

acceptcount:允許的最大連線數,應大於等於maxprocessors,預設值為100

enablelookups:是否反查網域名稱,取值為:true或false。為了提高處理能力,應設定為false

connectiontimeout:網路連線超時,單位:毫秒。設定為0表示永不超時,這樣設定有隱患的。通常可設定為20000毫秒。   

Tomcat常用調優技巧

本文是就tomcat 4為基礎向大家介紹web容器調優的,因為許多朋友安裝好之後就開始正式上線,很少有人以使用者現場為基礎對伺服器進行調優。如果併發量小,系統可能不會出問題,但是併發量大時,系統反應速度迅速下降,由於不了解原因,因此大家還拼命在自己的應用中尋找問題,從而浪費了寶貴的現場時間。但是to...

效能調優 tomcat

介紹 tomcat 伺服器是乙個免費的開放源 的輕量級 web 應用伺服器,如apache處理靜態html能力 突出不同,tomcat處理動態html能力相當強大,因此一般專案都是部署apache tomcat,由 apache處理程式的靜態檔案,tomcat處理jsp 頁面和servlet。tom...

tomcat調優策略

tomcat調優問題對工作經驗兩三年的開發人員來說主要針對面試時問題 1 修改tomcat的連線模式 修改tomcat的配置檔案server.xml tomcat 聯結器的三種方式 bio nio 和 apr,三種方式效能差別很大,apr 的效能最優,bio 的效能最差。而 tomcat 7 使用的...