2012-03-25 4 views
1

jmeter 도구를 사용하여 응용 프로그램을 테스트하고 있습니다. ELB (자동 조절 그룹 아님) 뒤에 두 개의 EC2 m1.small 인스턴스가 있고, 거대한 RDS db (Multi-AZ)를 캐싱하는 노드가 2 개 있습니다. 내 아파치 (apforked)는 256 maxclients와 같은 기본값으로 설정된다. 둘 다 256-256 요청을 처리 할 수 ​​있습니다. jmeter가 500 요청을 던질 때, 접속 시간이이고 jmeter의 샘플러에 오류가 있습니다. 문제가 무엇인지 알아낼 수 있습니까?아마존 ELB + jmeter

미리 감사드립니다.

+0

500 개의 요청이 연속적으로 전송됩니까? 하나의 요청으로 500 개의 스레드? – ant

답변

0

JMeter는 무엇을 던져 버릴까요? 일어날 수있는 몇 가지가 있습니다.

  1. 연결 재설정 :이 오류가 귀하의 JMeter를 밖으로 던져 경우 다음 서버가 끝나가는 것이며 더 많은 동시 요청을 지원 할 수 없음을 의미합니다. 즉 할당 된 256 개의 스레드가 모두 다른 요청을 처리하는 데 사용되고 있으며 이것은 기본적으로 서버에서 한도에 도달했음을 의미합니다.

  2. "주소는 이미 사용 중입니다"예외 : 이러한 종류의 오류는 부하 테스트를 수행 할 때 받아 들여서는 안되는 오류입니다. 이것은 기본적으로 시스템에 사용 가능한 포트가 없어서 더 많은 요청을하고 모든 포트가 사용 중임을 의미합니다. 이것은 여러 가지 이유로 발생할 수 있지만 Linux 용 ulimit와 같은 시스템 설정을 조정하거나 Windows 상자를 사용하는 경우 tcpTimedWaitDelay 및 해당 설정을 검토하여 포트가 전달 될 평균 시간을 확인하십시오 다음 연결을 위해 재사용 할 수 있도록 활성 풀로 되돌아갑니다. 이 상태를 tcp 포트 고갈이라고합니다 (http://www.outsystems.com/NetworkForums/ViewTopic.aspx?TopicId=6956&Topic=How-to-tune-the-TCP%2FIP-stack-for-high-volume-of-web-requests)

    이 문제를 해결하려면 분산 부하 테스트 및/또는 타이머를 사용하여 항상 새로운 연결을 만들 수있는 포트를 확보 할 수 있습니다.

+0

서버 로그 란 무엇입니까? 그것은로드 문제처럼 보인다. tomcat의 server.xml에서 max_threads를 늘리면 더 나은 결과를 얻는 지 확인할 수 있습니다. – Keshi