整理LVS架構壓力測試工做
首先,測試環境在模擬環境下進行。
測試環境:
1director(apache2.2
) + 1realserver(jboss4.2.3GA
)+1databaseserver(oracle9i
)
(windows web server 2008
)
測試工具:jmeter2.9
測試步驟:
1 使用jmeter2.9錄製腳本
http://blog.chinaunix.net/uid-28690609-id-3690959.html
2 調整各個參數
1、 apache2.2:調整apache打開進程數,默認是60
windowsxp等基於nt版核心的系統,最大能達到1024.UNIX版本最大能達到256.再多了,也只會影響性能。我測試的時候直接用了perchildthreads=1000\Maxrequestchildtheads=4000.出了很多提示,但也可用。
配置文件:D:\download\Apache2.2\conf\httpd.conf
添加下面模塊:
- <IfModule mpm_winnt.c>
- ThreadsPerChild 250
- MaxRequestsPerChild 1000
- Win32DisableAcceptEx
- </IfModule>
具體參數應當參考本機進行設置。
2、jboss4.2.3GA:調整打開進程數
配置文件:D:\download\jboss-4.2.3.GA\server\default\deploy\jboss-web.deployer\server.xml
- <Connector port="80" address="${jboss.bind.address}"
- maxThreads="250" maxHttpHeaderSize="8192" #(主要修改這個地方)
- emptySessionPath="true" protocol="HTTP/1.1"
- enableLookups="false" redirectPort="443" acceptCount="100"
- connectionTimeout="20000" disableUploadTimeout="true"
- compression="on" compressionMinSize="10"
- compressableMimeType="text/html,text/xml,text/javascript,text/css,text/plain"
- />
初始的maxThreads=250可能不夠用,我調到1024.仍是不夠用。其中幾個重要的參數
maxThreads最大的進程數目
acceptCount當進程數滿後,等待隊列的數目
3、 調整oracle-ds.xml 數據庫鏈接池文件
配置文件爲:D:\download\jboss-4.2.3.GA\server\default\deploy\oracle-ds.xml
這個文件時本身建立的,默認的樣例,在D:\download\jboss-4.2.3.GA\docs\examples\jca\hsqldb-ds.xml
主要修改參數:
- <idle-timeout-minutes>5</idle-timeout-minutes>
- <min-pool-size>20</min-pool-size> #最小鏈接池數目
- <max-pool-size>40</max-pool-size> #最大鏈接池數目 (主要修改這個地方)
- <query-timeout>300</query-timeout> #請求超時時間
- <use-fast-fail>true</use-fast-fail>
這裏面的最大鏈接池數目最好不要超過200.oracle 9i默認的鏈接數大概也就200左右。超過可能會致使oracle not avliable錯誤。
若是要修改默認鏈接數,能夠使用UltraEdit編輯器打開init.ora文件進行修改
。
參考資料:http://linux.sheup.com/linux/38/linux23235.htm
http://hi.baidu.com/crsky2008/item/2e34a2784ce24d3e70442372 oracle修改默認鏈接數
歡迎關注本站公眾號,獲取更多信息