優化說明:
一、Weblogic服務程序設置:
1、設置JDK內存:
修改weblogic\user_projects\domains\base_domain\bin下的setDomainEnv.cmd文件:
修改前:
if"%JAVA_VENDOR%"=="Sun" (
set WLS_MEM_ARGS_64BIT=-Xms256m -Xmx512m
set WLS_MEM_ARGS_32BIT=-Xms256m -Xmx512m
) else (
set WLS_MEM_ARGS_64BIT=-Xms512m -Xmx512m
set WLS_MEM_ARGS_32BIT=-Xms512m -Xmx512m
)
setMEM_PERM_SIZE_32BIT=-XX:PermSize=48m
setMEM_MAX_PERM_SIZE_32BIT=-XX:MaxPermSize=128m
修改后:
if"%JAVA_VENDOR%"=="Sun" (
set WLS_MEM_ARGS_64BIT=-Xms512m –Xmx1024m
set WLS_MEM_ARGS_32BIT=-Xms512m –Xmx1024m
) else (
set WLS_MEM_ARGS_64BIT=-Xms1024m –Xmx1024m
set WLS_MEM_ARGS_32BIT=-Xms1024m –Xmx1024m
)
setMEM_PERM_SIZE_32BIT=-XX:PermSize=128m
setMEM_MAX_PERM_SIZE_32BIT=-XX:MaxPermSize=256m
說明:紅色字體為修改的內容,具體修改值根據實際物理內存確定
· -Xmx3550m:設置JVM最大堆內存為3550M。
· -Xms3550m:設置JVM初始堆內存為3550M。此值可以設置與-Xmx相同,以避免每次JVM動態分配內存所浪費的時間。
· -XX:PermSize=256M:設置堆內存持久代初始值為256M。(貌似是Eclipse等IDE的初始化參數)
· -XX:MaxPermSize=512M:設置持久代最大值為512M。
32位操作JDK內存系統:最大可設置1.5G,如果設置過大,會導致服務無法啟動
64位操作JDK內存系統:最大設置為物理內存的60~80%
2、設置線程數:
修改weblogic\user_projects\domains\base_domain\bin下的setDomainEnv.cmd中在JAVA_OPTIONS中添加如下:
set JAVA_OPTIONS=%JAVA_OPTIONS%-Dweblogic.threadpool.MinPoolSize=2000
set JAVA_OPTIONS=%JAVA_OPTIONS%-Dweblogic.threadpool.MaxPoolSize=4000
說明:
JDK5.0以后每個線程棧大小為1M,但是操作系統對一個進程內的線程數還是有限制的,不能無限生成。32位操作系統根據JVM最大堆內存設置;64位操作系統經驗值在3000~5000左右。
3、Weblogic數據庫連接池連接數設置:
受Oracle數據庫連接數的影響,可以參照同一時間連接數據庫的用戶數量,進行設置,數據庫的最大連接數不能小於高峰時期同一時間連接用戶的數量。點擊數據源,進入后選擇連接池:
初始容量:20
最大容量:50
容量增長:5
說明:
設置前得設置數據庫的最大並發線程數(下面有介紹Oracle數據庫線程數設置方法),因為weblogic節點的連接池最大連接數之和不能大於數據庫的最大線程數。
· 初始容量:要在創建連接池時創建的物理連接數。如果無法創建這一數量的連接,創建此連接池的操作將會失敗。此連接數也是連接池將保持的最小可用物理連接數。
· 最大容量:此連接池可容納的最大物理連接數。
· 容量增長:將新連接添加到連接池時創建的連接數。不再有可用的物理連接來滿足連接請求時,WebLogic Server 會創建該數量的附加物理連接並將它們添加到連接池中。MBean 屬性 (不適用於應用程序模塊):JDBCConnectionPoolParamsBean.CapacityIncrement。
4、Weblogic的服務設置[配置\優化]:
接受積壓:300
登錄超時:5000
說明:
· 接受積壓:對於此服務器的常規和 SSL 端口,應該允許的新 TCP 連接請求的積壓數量。將積壓設置為 0 可以防止此服務器接受某些操作系統上的所有傳入連接。MBean 屬性:ServerMBean.AcceptBacklog。最小值:0
· 登錄超時:此服務器的默認常規 (非 SSL) 監聽端口的登錄超時。這是允許建立新連接的最長時間。如果值為 0,表示無最大值。MBean 屬性:ServerMBean.LoginTimeoutMillis最小值:0。最大值:100000。安全值:5000
二、Windows服務器設置:
1、修改最高端口號和TCP/IP釋放連接時間:
在注冊表HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlset\Services\Tcpip\Parameters下加入新建值:
MaxUserPort,(DWORD值)十進制,65534
TcpTimedWaitDelay,(DWORD值)十進制,30
說明:同時使用這兩個參數,集群時Windows服務器一定要設置。
· MaxUserPort:確定在應用程序從系統請求可用用戶端口時,TCP/IP 可指定的最高端口號。缺省值:無。建議值:十進制 65534。
· TcpTimedWaitDelay:減少此條目的值允許 TCP/IP 更快地釋放已關閉的連接,為新連接提供更多資源。如果運行的應用程序需要快速釋放和創建新連接,而且由於 TIME_WAIT 中存在很多連接,導致低吞吐量,則調整此參數。缺省值:240,它將等待時間設置為 240 秒(4 分鍾)。 建議值:設置為 30 秒。停止並重新啟動系統。
三、Oracle數據庫設置:
1、Oracle線程數設置:
通過設置以下語句查詢和設置Oracle的線程數:
--查詢最大線程連接數 :
show parameter processes
--更改線程連接數 :
alter system set processes=500 scope=spfile;
設置完成后重啟數據庫。啟動后通過查詢最大線程連接數(showparameter processes)查看是否設置正確並生效。
說明:默認是150個,這個量並非越大越好,需要根據硬件性能來設置。
優化實例:
一、Weblogic10.3_Windows集群布署
這是以兩台裝有Window2003—64bit的8核CPU、8G內存的服務器做的集群布署,用的都是Weblogic10.3和jdk-6u23-windows-x64。其中一台機器安裝的管理服務和受管理服務,另外一台安裝的代理服務和受管理服務。
1、機器配置:
序號 |
硬件型號 |
安裝軟件 |
IP |
用途說明 |
1 |
HP DL380G5 PC服務器 |
WIN2003-64位操作系統:8CPU、8G內存 Weblogic10.3平台, JDK:sun23-64bit |
192.168.0.303 |
Weblogic應用服務器 |
2 |
HP DL380G5 PC服務器 |
WIN2003-64位操作系統:8CPU、8G內存 Weblogic10.3平台, JDK:sun23-64bit |
192.168.0.307 |
Weblogic應用服務器 |
3 |
IBM SyStem P55A AIX |
UNIX操作系統 ORACLE10G數據庫 |
192.168.0.35 |
數據存儲服務器 |
4 |
H3C S1024R 交換機 |
|
|
|
5 |
DELL OPTIPLEX 760 PC機 |
IE6.0 LoadRunner 8.1 |
192.168.0.205 |
測試工作站 |
2、Weblogic優化設置:
服務器類型 |
系統軟件 |
參數類型 |
參數值 |
備注 |
數據庫服務器 |
Oracle |
最大連接數 |
500 |
默認值150 |
應用服務器 |
Windows |
注冊表修改 |
最大用戶數:20000 |
|
TCP延遲:30S |
||||
Weblogic |
數據庫連接池 |
初始連接數:20 |
默認:1 |
|
最大連接數:50 |
默認:15 |
|||
步長:5 |
默認:1 |
|||
積壓數 |
300 |
采用默認值 |
||
登錄超時時間 |
5000mS |
采用默認值 |
||
JDK內存設置 |
最小內存:2048M |
默認為256M~512M |
||
最大內存:2048M |
二、Weblogic10.3_Windows單機布署
這是以一台裝有Window2003—64bit的8核CPU、8G內存的服務器做的Weblogic布署,用的是Weblogic10.3和jdk-6u23-windows-x64。
1、機器配置:
序號 |
硬件型號 |
安裝軟件 |
IP |
用途說明 |
1. |
HP DL380G5 PC服務器 |
WIN2003-64位操作系統:8CPU、8G內存 Weblogic10平台, JDK:sun23-64bit |
192.168.0.302 |
Weblogic應用服務器 |
2. |
IBM SyStem P55A AIX |
UNIX操作系統 ORACLE10G數據庫 |
192.168.0.35 |
數據存儲服務器 |
3. |
H3C S1024R 交換機 |
|
|
|
4. |
DELL OPTIPLEX 760 PC機 |
IE6.0 LoadRunner 8.1 |
192.168.0.205 |
測試工作站 |
2、Weblogic優化設置:
服務器類型 |
系統軟件 |
參數類型 |
參數值 |
備注 |
數據庫服務器 |
Oracle |
最大連接數 |
500 |
默認值150 |
應用服務器 |
Windows |
注冊表修改 |
最大用戶數:20000 |
|
TCP延遲:30S |
||||
Weblogic |
數據庫連接池 |
初始連接數:50 |
默認:1 |
|
最大連接數:100 |
默認:15 |
|||
步長:5 |
默認:1 |
|||
積壓數 |
300 |
默認 |
||
登錄超時時間 |
5000mS |
默認 |
||
JDK內存設置 |
最小內存:3072M |
默認為256M~512M |
||
最大內存:4096M |
||||
線程數 |
最小線程:2500 |
默認沒有參數 |
||
最大線程:5000 |