隨筆-50  評論-55  文章-8  trackbacks-0

          ????? 性能往往出現在你做容易忽略的地方!
          ????? 最近開發了一個WML服務端,部署在tomcat6.0,默認內存64M。做壓力測試,用LR每秒跑50個用戶并發,結果2小時后內存的永久區就滿了,且不回收,查程序,感覺任何可以優化的地方都已經優化了,最后窮盡的辦法,還是老樣子。最好還是感覺我們公司的測試人員NB,發現java.util.concurrent.ConcurrentHashMap$Segment的對象越來越多,經網上資料分析,極有可能是session堆積造成的。這個時候才恍然大悟,因為壓力測試的時候,都沒模擬新的用戶,每次訪問服務端都會創建一個新的session對象,保存在服務器端,如果session有效期不過期,那么就一直保存著,知道內存耗盡。只要知道問題的所在,就比較容易解決問題了。我們都知道session的過期時間是在web.wml里面設置,原來我設置了一天,現在改成30分鐘,不再出現內容消耗的情況了,謝天謝地謝測試。
          <session-config>
          ??<session-timeout>30</session-timeout>
          ?</session-config>
          ????? 得出的結論是,如果想保存session時間久一點,那么設計tomcat的內存大一點,防止請求量的情況出現內存耗盡。如果session在測試中用到不多或者失效性不強,沒有必要加內容,直接修改wen.xml即可。
          ???? 附上網上一個“專家”的分析,http://ddupnow.javaeye.com/blog/621619

          posted on 2010-04-16 15:04 蔣家狂潮 閱讀(2433) 評論(3)  編輯  收藏 所屬分類: JWeb

          評論:
          # re: J2EE壓力測試的性能問題 2010-04-17 22:09 | stone2083
          為什么不考慮使用JSESSIONID,來模擬更真實的用戶并發情況?  回復  更多評論
            
          # re: J2EE壓力測試的性能問題 2010-04-18 15:27 | 俏物悄語購物網站
          是大方的師傅  回復  更多評論
            
          # re: J2EE壓力測試的性能問題 2010-04-22 08:59 | hsihao
          30分鐘……  回復  更多評論
            
          主站蜘蛛池模板: 滦南县| 晋宁县| 璧山县| 江山市| 台北市| 东乌| 琼结县| 大足县| 丽水市| 奉贤区| 城固县| 南平市| 陵川县| 五华县| 乾安县| 武定县| 平遥县| 营山县| 巴彦淖尔市| 五台县| 大埔县| 静安区| 利辛县| 宜宾县| 彭州市| 温宿县| 乐都县| 凉城县| 河北区| 富锦市| 溧阳市| 虎林市| 芷江| 云林县| 洛浦县| 麻江县| 通城县| 香河县| 门头沟区| 延长县| 马鞍山市|