Administrator
|
1. vuser 는 전체 쓰레드 개수(프로세스개수*프로세스당 쓰레드 개수) 와 동일합니다.
테스트 스크립트를 어떻게 작성했으냐에 따라 프로세스와 쓰레드 개수를 적절하게 지정하는게 필요한데요. 예를 들어 static 변수에 대규모의 리소스(예:100mb)를 로딩 해 두었을 경우, 이는 프로세스 개수만큼 에이전트 메모리를 더 필요로 합니다. 그리고 일반 멤버 변수에 리소스를 로딩하였을때는 쓰레드 개수만큼 곱한 메모리를 필요로 합니다.
OS 가 현재 떠 있는 프로세스간에 context switching을 하기 때문에 프로세스 개수를 늘리면 그 만큼 에이전트가 cpu를 사용하는 기회가 늘어나긴 하지만, 자바가 기본적으로 사용하는 메모리도 늘어나기 때문에, 과도한 프로세스 개수는 에이전트의 메모리 사용량을 소모시켜, threshing 상태로 빠질 수 있습니다. 저희가 예전에 테스트 했을 때는 프로세스는 최대 10개 정도가 최대치였습니다.
2. 1개의 머신에 2개 이상의 agent를 사용할 경우, 현재 이 머신이 어느정도의 free 메모리를 가지고 있는지 에이전트가 판단하기 힘들어 테스트 프로세스의 메모리 할당을 제대로 할 수 없습니다. 그리고 상호 간섭 현상(네트웍 트래픽)이 발생하여 테스트의 측정 결과를 신뢰할 수 없습니다.
|