參數設定
1、修改啟動時內存參數、並指定JVM時區(在windows server 2008 下時間少了8小時)
在 Tomcat 上運行 j2ee 項目代碼時,經常會出暫存記憶體不足的情況,解決辨法是在系統參數中設定
Window 下,在 catalina.bat (如果沒有 catalina.bat 的話,自行建立一個)最前面加入:
set JAVA_OPTS=-XX:PermSize=64M -XX:MaxPermSize=128m -Xms512m -Xmx1024m;-Duser.timezone=GMT+08;
一定要加在 catalina.bat 最前面
Linux下,在 catalina.sh 最前面加入
JAVA_OPTS="-XX:PermSize=64M -XX:MaxPermSize=128m -Xms512m -Xmx1024m -Duser.timezone=Asia/Shanghai"
PS.可以在命令列下用 java -XmxOOOOM -version 命令來進行測試,然後逐漸的加大 OOOO 的值,如果執行正常就表示指定的內存大小可以用,否則會出現錯誤訊息。
注意:前後二者區別,有無 set 和 有無 雙引號.
2、連線數配置(Taocat 6 下)
使用連線數,配置較少的排程處理較多的訪問,可以提高 Tomcat 處理請求的能力。
首先。打開 /conf/server.xml,加入
<Executor name="tomcatThreadPool" namePrefix="catalina-exec-"
maxThreads="500" minSpareThreads="20" maxIdleTime="60000" />
依據設定:最大備用排程為 500 (一般伺服器就足夠了),最小備用排程為20,排程最大空閒時間為60秒。
然後,修改 <Connector…> 節點,增加 executor 屬性
<Connector executor="tomcatThreadPool"
port="80"
protocol="HTTP/1.1"
maxThreads="600"
minSpareThreads="100"
maxSpareThreads="300"
connectionTimeout="60000"
keepAliveTimeout="15000"
maxKeepAliveRequests="1"
maxHttpHeaderSize="8192"
URIEncoding="UTF-8"
acceptCount="100"
disableUploadTimeout="true"
enableLookups="false"
redirectPort="443"
....../>
maxThreads:Tomcat 可建立的最大連線數,每一個連線處理一個請求;
minSpareThreads:最小備用連線數,Tomcat 啟動時的初始化連線數;
maxSpareThreads:最大備用連線數,一互旦建立的連線數超過這個值,Tomact 就會關閉不再需要的 socke 連線;
connectionTimeout:網路連線超時,單位:毫秒。設置為0表示永不超時,這樣設置有穩患。通常可設置為30000毫秒;
keepAliveTimeout:連線最大保持時間(毫秒);
maxKeepAliveRequests:最大連接個數(1 表示禁用,-1 表示不限制個數,默認 100 個。一般設置在 100 ~ 200 之間);
maxHttpHeaderSize:http 請求訊息最大長度,超過此長度的部份不予處理,一般 8k;
URIEncoding:指定Tomcat 的 URL 編碼格式;
acceptCount:當所有排程都被使用的情況下,新的請求會放入待處理陣列中,acceptCount 設定最大待處理陣列數,超過這個數量的請求將不予處理,默認為 10 個;
disableUpoadTimeout:上傳時是否使用超時機制;
enableLookups:是否允許DNS查詢,為了提高處理能力,應設置為 false;
bufferSize:定義緩衝區的大小,將通過此連接器上創建的輸入流提供。默認提供2048 bytes 的緩衝區;
minProcessors:最小空閒排程數,用於提高系統處理性能,默認值為10(用於Tomcat 4 中);
maxProcessors:最大排程數,最大請求數,默認值為75(用於Tomcat 4中);
注意:可以多個 Connector 公用一個排程。
備注:Tomcat 4 中可以通過修改 minProcessors 和 maxProcessors 的值來控制排程數。
3、Tomcat 增加一個應用
在 server.xml 的 Host 標籤中增加
<Context displayName="OA" docBase="/app/web-apps/GACWP" path="" />
path 代表上下文名稱,空表示是根路徑。