토이프로젝트를 하는 중 부하 테스트를 해야 하는 상황이 왔습니다. jmeter, gatling, ngrinder 등 다양한 테스팅 툴 중 Naver에서 만들었으며 레퍼런스가 그나마 많은 jmeter와 nginder중 무엇을 선택해야 할 지 고민하였습니다. 그러나 저는 현재 자바 + 스프링으로 취준을 하고 있고 테스트 스크립트를 groovy로 작성할수있는 nGrinder를 사용하기로 하였습니다.
원인
그렇게 nGrinder document를 보면서 다음과 같이 실행시켰고
java -jar ngrinder-controller-3.5.9.war
다음과 같은 오류가 발생했습니다.
에러 코드를 요약하자면 다음과 같습니다.
java.io.tmpdir(자바 시스템 속성)와 OS 기본 tmpdir은 서로 달라야 합니다.
해결 방법
그렇기에 자바의 시스템 속성을 변경하거나 혹은 운영체제의 시스템 속성을 변경하면 될 것입니다.
우선 문제가 되는 자바 시스템 속성인 tmpdir의 값은 다음과 같습니다.
다음 운영체제의 tmpdir의 값은 다음과 같습니다.
저 같은 경우 운영체제의 환경변수를 건드는 것보단 java 시스템 속성의 값을 바꿔서 실행시키는 것이 안전하다 판단되어
다음과 같이 nGrinder의 war 파일이 위치한 디렉토리의 경로를 잡아주었습니다.
그리고 다음과 같이 서버가 떴다는 로그를 보았고
이후 localhost:8080으로 접속하면
다음과 같이 접속할 수 있습니다!
+ 초기 로그인 계정의 id는 admin이고 pw는 admin입니다.
'오류일기' 카테고리의 다른 글
Dockerfile, Docker-compose에서 CMD 여러개 입력하기 (2) | 2024.04.06 |
---|---|
Docker로 H2 컨테이너로 띄우기(포트 문제) (0) | 2024.04.06 |
[JPA] Reason: Validation failed for query for method public abstract 에러가 날 때 (0) | 2024.01.27 |
[JPA] PostgreSQL을 사용하는 환경에서 Point 타입 사용하기 (1) | 2024.01.27 |
Google Cloud Storage + Spring Boot 401 Unauthorized (0) | 2024.01.22 |