일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- @controller
- oauth2.0
- assert
- Cache
- 성능테스트
- Git
- AWS
- N + 1
- Hibernate
- @RequestMapping
- Convention
- @Transaction(readOnly=true)
- OIDC
- spring
- mockito
- 데드락
- spring-cloud-starter-aws
- fetch join
- JPA
- Batch
- 동시성
- 정적 팩터리 메서드
- jdbc
- batch insert
- 이펙티브 자바
- injellij
- MySQLTransactionRollbackException
- awspring
- ngrinder
- Cannotacquirelockexception
- Today
- Total
정리정리
nGrinder [WARNING] The test is finished but has no TPS 본문
최근에 nGrinder를 이용해서 사이드 프로젝트 성능 테스트를 하다가 다음과 같은 로그가 발생하면서 TPS 그래프가 정상적으로 그려지지 않았던 일이 있었습니다.
[WARNING] The test is finished but has no TPS라는 문구가 뜨면서 제대로 처리가 되지 않는 경우였습니다.
스크립트를 작성하면서 여러 실수를 해보는 과정에서 몇 번 겪은 일이기 때문에 여느때처럼 예외를 보기 위해 로그 파일을 받아 열어봤습니다.
그런데 기대와는 달리 테스트가 끝났다는 received a stop message 로그를 띄운 후, communication shut down 로그만 달랑 내버려둔 채 로그 파일이 끝났습니다.
스크립트 문젠가 싶었지만 테스트한 스크립트는 테스트 서버 주소를 로컬에서 네이버 클라우드 서버로 바꾼거라 스크립트가 잘못되지는 않았을 거라 생각했습니다.
방화벽도 NCP 서버의 모든 IP에 대해 80 포트와 443 포트를 잘 열어둔 것도 다시 한번 확인을 했습니다.
심지어 포스트맨으로 테스트를 했을 때 잘 동작했고, 위의 로그에서도 테스트 시 200응답을 받았기 때문에 방화벽 문제는 절대 아니라고 판단했습니다.
그래서 구글링을 하다가 저와 비슷한 ngrinder 이슈와 해결 방법을 찾게 되었습니다.
결론은 Groovy말고 Jython으로 스크립트를 작성하라는 것이었습니다.
솔직히 처음에는 반신반의하면서 jython으로 스크립트를 다시 작성하고 테스트를 돌려봤더니..
여담
nGrinder를 처음 써보고 있는데 개인적으로는 많이 힘드네요.. 분명히 쉬운 건 맞는 것 같은데..
nGrinder도 커뮤니티가 더 활성화되고 자료도 더 많아지면 참 좋겠다는 생각이 들었습니다 😭