1.增加JVM堆內(nèi)存大小
1)JVM通常不去調(diào)用垃圾回收器,所以服務(wù)器可以更多關(guān)注處理web請求,并要求盡快完成。
2)更改文件(catalina.sh)
1
2
3
4
5
6
|
JAVA_OPTS=”-Djava.awt.headless= true -Dfile.encoding=UTF-8 -server -Xms1024m -Xmx1024m -XX:NewSize=512m -XX:MaxNewSize=512m -XX:PermSize=512m -XX:MaxPermSize=512m -XX:+DisableExplicitGC” -Xms – 指定初始化時化的棧內(nèi)存 -Xmx – 指定最大棧內(nèi)存 |
2.修復(fù)JRE內(nèi)存泄漏
1)最新的tomcat版本6.0.26及以上就可以解決這個錯誤,因?yàn)樗艘粋€監(jiān)聽器來處理JRE和PermGen的內(nèi)存泄漏。
2)更改server.xml
1
|
<Listener className=“org.apache.catalina.core.JreMemoryLeakPreventionListener” /> |
3.線程池設(shè)置
maxThreads的值應(yīng)該根據(jù)流量的大小,
如果值過低,將有沒有足夠的線程來處理所有的請求,請求將進(jìn)入等待狀態(tài),只有當(dāng)一個的處理線程釋放后才被處理;
如果設(shè)置的太大,Tomcat的啟動將花費(fèi)更多時間。因此它取決于我們給maxThreads設(shè)置一個正確的值。
其中和最大連接數(shù)相關(guān)的參數(shù)為maxProcessors 和 acceptCount 。如果要加大并發(fā)連接數(shù),應(yīng)同時加大這兩個參數(shù)。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
|
<Connector port=“ 9027 ” protocol=“HTTP/ 1.1 ” maxHttpHeaderSize=“ 8192 ” maxThreads=“ 1000 ” minSpareThreads=“ 100 ” maxSpareThreads=“ 1000 ” minProcessors=“ 100 ” 最小空閑連接線程數(shù),用于提高系統(tǒng)處理性能 maxProcessors=“ 1000 ” 最大連接線程數(shù),即:并發(fā)處理的最大請求數(shù) enableLookups=“ false ” 是否反查域名,取值為: true 或 false 。為了提高處理能力,應(yīng)設(shè)置為 false compression=“on” compressionMinSize=“ 2048 ” compressableMimeType=“text/html,text/xml,text/javascript,text/css,text/plain” connectionTimeout=“ 20000 ” 網(wǎng)絡(luò)連接超時,單位:毫秒。設(shè)置為 0 表示永不超時,這樣設(shè)置有隱患的。通常可設(shè)置為 30000 毫秒。 URIEncoding=“utf- 8 ” acceptCount=“ 1000 ” 允許的最大連接數(shù),應(yīng)大于等于 maxProcessors redirectPort=“ 8443 ” disableUploadTimeout=“ true ”/> |
4.壓縮
1
2
|
compression=“on” compressionMinSize=“ 2048 ” |
當(dāng)文件的大小大于等于2048bytes時才會壓縮
5.數(shù)據(jù)庫性能調(diào)優(yōu)
Tomcat性能在等待數(shù)據(jù)庫查詢被執(zhí)行期間會降低
確保所有數(shù)據(jù)庫連接正確地關(guān)閉。
最大空閑數(shù)(maxIdle),最大連接數(shù)(maxActive),最大建立連接等待時間(maxWait)屬性的值。
6.其它選項(xiàng)
開啟瀏覽器的緩存,這樣讀取存放在webapps文件夾里的靜態(tài)內(nèi)容會更快,大大推動整體性能
每當(dāng)開機(jī)時,Tomcat服務(wù)器應(yīng)當(dāng)自動地重啟
一般情況下HTTPS請求會比HTTP請求慢。如果你想要更好的安全性,即使慢一點(diǎn)我們還是要選擇HTTPS
設(shè)置TOMCAT啟用GZIP壓縮
1
2
3
4
|
compression=”on” 打開壓縮功能 compressionMinSize=”50″ 啟用壓縮的輸出內(nèi)容大小,默認(rèn)為2KB noCompressionUserAgents=”gozilla, traviata” 對于以下的瀏覽器,不啟用壓縮 compressableMimeType=”text /html ,text /xml ,text /javascript ,text /css ,text /plain “ 哪些資源類型需要壓縮 |
以上所述是小編給大家介紹的tomcat性能優(yōu)化(性能總覽),希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復(fù)大家的。在此也非常感謝大家對服務(wù)器之家網(wǎng)站的支持!
原文鏈接:http://blog.csdn.net/hello_zyg/article/details/58651341