Ngrinder를 이용하여 서버 스트레스 테스트
https://github.com/naver/ngrinder
GitHub - naver/ngrinder: enterprise level performance testing solution
enterprise level performance testing solution. Contribute to naver/ngrinder development by creating an account on GitHub.
github.com
ngrinder는 네이버에서 오픈소스로 제공하는 스트레스 테스트이다.
ngrinder는 크게 2가지로 구성이 되어있는데, controller와 agent이다.
agent로 테스트를 진행하며 agent여러개를 관리하여 결과 등을 확인 할 수 있는것이 controller이다.
우선 controller를 다운 받는다.
https://github.com/naver/ngrinder/releases
Releases · naver/ngrinder
enterprise level performance testing solution. Contribute to naver/ngrinder development by creating an account on GitHub.
github.com
java -jar ngrinder-controller-{version}.war
으로 실행을 하는데, 최근 버전은 java 17을 지원한다고 쓰여 있지만
net.grinder.engine.common.EngineException: Error while initialize test runner
at net.grinder.scriptengine.groovy.GroovyScriptEngine.<init>(GroovyScriptEngine.java:71)
at net.grinder.scriptengine.groovy.GroovyScriptEngineService.createScriptEngine(GroovyScriptEngineService.java:87)
at net.grinder.engine.process.ScriptEngineContainer.getScriptEngine(ScriptEngineContainer.java:105)
at net.grinder.engine.process.GrinderProcess.run(GrinderProcess.java:345)
at net.grinder.engine.process.WorkerProcessEntryPoint.run(WorkerProcessEntryPoint.java:87)
at net.grinder.engine.process.WorkerProcessEntryPoint.main(WorkerProcessEntryPoint.java:60)
Caused by: org.codehaus.groovy.control.MultipleCompilationErrorsException: startup failed:
General error during conversion: Unsupported class file major version 61
java.lang.IllegalArgumentException: Unsupported class file major version 61
at groovyjarjarasm.asm.ClassReader.<init>(ClassReader.java:196)
at groovyjarjarasm.asm.ClassReader.<init>(ClassReader.java:177)
at groovyjarjarasm.asm.ClassReader.<init>(ClassReader.java:163)
at groovyjarjarasm.asm.ClassReader.<init>(ClassReader.java:284)
막상 agent까지 다운로드 후 실행을 하면 빨간색 원이 뜨며 해상 오류가 생긴다.
https://shanepark.tistory.com/402
[Java] Unsupported class file major version 61 해결하기
문제 Unsupported class file major version 61 ArchUnit을 통한 아키텍처 테스트를 해 보려는데 Unsupported class file major version 61 에러가 발생했습니다. 원인 class file major version 61은 로드 하려고 시도하고 있는
shanepark.tistory.com
등 찾아보면 java 버젼 이슈인 것을 확인 할 수있다. 그냥 1.8로 안전하게 실행하자.
controller를 실행하였다면 localhost:8080에 접속해서
id, pw를 admin 으로 입력하면 들어갈 수 있다.
여기서 agent를 다운로드 해서 진행하자.
agent를 다운한뒤 폴더에 들어가보면
run_agent.sh 파일이있으니 실행해주면 된다.
agent마다 최대 3000명의 동시 접속자를 test할 수있으니 더많이 진행하고 싶다면 agent를 여러개 생성해서 진행하면된다.
test는 test하고자하는 Url을 script를 통해 설정하여 진행 할 수있다.