2011-10-28 2 views
0

Tomcat 7의 LoadUI Load 테스트를 Apache 2.2에서 이기고 ec2의 win 2003 서버에서 실행하려고합니다. 로드 테스트에서 사용자를 늘리려고하면 소켓 시간 초과 오류가 계속 발생합니다. 동시에 20 명의 사용자를 동 기적으로 실행하면 실패합니다. 서버가 완전히 응답하지 않습니다.소켓 시간 초과 Tomcat7

-Xmx1024m,-XX:MaxPermSize=128m 

나는 다음과 같은 바람둥이의 server.xml에 사용했다 :

maxThreads="250",connectionTimeout="20000 

서버는 CPU 사용률이 100 %가 아닌 전체 힙 사용량을 보여줍니다.

내 다음 단계는 내가 아파치의 httpd.conf에 설정 한

maxThreads="250",connectionTimeout="60000",acceptCount="250",maxkeepAliverequest="1" 

으로 시도하는 것입니다

는 GUI에서 JDK1.6와 heapdumps에서
keepAlive on, ThreadsPerChild 250, MaxRequestsPerChild 0 

답변

0

jvisualvm.exe은 거대했다 도움이되었습니다. 힙 덤프 아래의 지배자 트리와 그 아래에있는 가장 큰 객체가 궁극적으로 메모리 누수를 지적했습니다. Eclipse MAT를 사용하여 힙 덤프를 효과적으로 보았습니다.

또한 maxThreads를 200으로 줄이면 CPU 사용량을 줄이고 acceptCount 대기열을 500으로 늘릴 수 있습니다.