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