1. 程式人生 > >Tomcat 能穩定支援的最大使用者併發數(詳解)

Tomcat 能穩定支援的最大使用者併發數(詳解)

參考:http://blog.sina.com.cn/s/blog_68b7d2f50101ann7.html

伺服器配置:

         單硬碟,SATA   8MB快取

         測試伺服器和loadrunner執行伺服器位於同一網段--100MB網路(同一交換機)上,排除網路問題的影響

         伺服器執行始終,CPU使用率非常低沒有超過5% 因此雖然伺服器配置低,但是不是效能瓶頸所在

         伺服器執行在windowsserver 2003 sp2中文版(正版系統)

         tomcat記憶體的設定:1.4GBJVM+256MB的池

set JAVA_HOME=C:\JAVA\JDK15
set CATALINA_OPTS=-server -Xms 1400m -Xmx1400m -XX:PermSize=256m -XX:MaxPermSize=256m

tomcat執行緒的設定:初始產生1000執行緒數最大支援2000執行緒

<Connector port="80" maxHttpHeaderSize="8192"
    maxThreads="4000" minSpareThreads="1000" maxSpareThreads="2000"
    enableLookups="false" redirectPort="8443" acceptCount="2000"
    connectionTimeout="20000" disableUploadTimeout="true" />

需要顯示的JSP頁面:index.jsp

<html>
<body>
test---tomcat
<%
   System.out.println("===========================");
    System.out.println("===========================");
    System.out.println("===========================");
   System.out.println("===========================");
    System.out.println("===========================");     %>
</body>
</html>

類似於靜態頁面,以此來判斷tomcat支援的最大的併發使用者數量

使用loadrunner設定1000併發使用者數進行壓力測試。每兩秒鐘增加一個使用者,以此遞增,直至1000後,然後再按照兩秒鐘一個使用者遞減直至使用者數位0.

測試結果:

Transaction Response Time Under Load

1可以看到在達到600使用者同時線上的時候,系統響應時間為6秒鐘

100人-----響應時間0.8秒   完美

150人-----響應時間1秒      完美

200人-----響應時間1.5秒    響應時間有微小波動 比較完美

250人-----響應時間1.8秒    比較完美(此時是理想情況下最大的併發使用者數量)

280人-----開始出現連線丟失問題,連線開始不穩定

300人-----響應時間3秒      響應時間有較大波動峰值為6秒   較差

350人-----響應時間3秒      開始大量出現連線丟失問題 連線很不穩定

400人-----響應時間3.8秒    連線丟失數量達到3000次以上

450人-----響應時間4秒      連線丟失數量達到6000次以上

500人-----響應時間4秒      連線丟失數量達到11000次以上

550人-----響應時間6秒      連線丟失數量達到21000次以上

600人-----響應時間6秒      連線丟失數量達到25000次以上

600人開始系統出現異常情況,因此停止測試。測試資料到此為止。

每秒的點選次數:

虛擬使用者遞增情況

網路流量

 

測試過程中成功和失敗的響應結果: