본문으로 건너뛰기

nGrinder 성능 테스트 #2 - 'Performance Test' 설정 속성 알아보기

2023년 12월 27일에 작성되었고, 블로그를 이전하며 옮겨온 포스트입니다.
여기에서 원본을 확인할 수 있습니다.

시작하기

nGrinder 성능 테스트 #1에 이어, 이 글에서는 nGrinder 컨트롤러에서 Performance Test 기능의 설정에 대한 속성에 대해 알아보려고 한다. nGrinder 테스트를 실행하는 Script 작성에 관해서는 이 다음 글인 로컬 테스트 진행 때 다루려 하기에 이 글에는 추가하지 않았다.

Performance Test 설정 속성 알아보기

nGrinder Controller(http://localhost:8300/)에서 상단에 위치한 헤더 메뉴에서 Performance Test 메뉴를 눌러보면 위 사진과 같은 화면이 표시된다. 가이드라인 대로라면 Script를 작성하고, Test 설정을 해야하지만, Script가 없어도 설정 화면 접근 자체는 가능하기에 Test를 생성해 보겠다. 우측 메뉴에서 Create Test 버튼을 클릭하여 새로운 테스트를 생성해 준다.

그러면 위와 같은 새로운 테스트를 생성할 수 있는 화면이 표시된다. 나눠져 있는 섹션 별로 메뉴를 자세히 알아보도록 하겠다.

테스트 기본 정보 설정

테스트 기본 정보를 설정하는 섹션이다.

  • Test Name: 테스트 구분을 위한 이름 설정
  • Tags: 테스트 태그 설정 (추후 쉬운 구분을 위한 태그 설정이 있는 것으로 보임)
  • Description: 테스트 설명 입력

Basic Configuration

Basic Configuration의 설정이 nGrinder의 가장 핵심이라고 생각한다. 성능 테스트를 하는 이유가 동시 접속이 이루어 졌을 때 얼마 만큼의 성능을 낼 수 있는지 테스트 하는 것인데, 이 부분에서 가상의 유저(동시 접속을 요청하는 사용자)를 설정할 수 있기 때문이다.

  • Agent: 성능 측정에 사용할 Agent 개수
    • Agent는 컨트롤러의 명령을 받아 실행한다.
  • Vuser per agent: Agent 당 설정할 가상 사용자 수
    • 동시에 API 요청을 하는 (가상) 사용자 수
  • Processes, Threads: 하나의 Agent에서 생성할 Proccess와 Thread 개수
    • 입력해 보면 쉽게 알 수 있겠지만, Processess * Threads * Agent가 Vuser per agent의 값이 된다.
  • Script: 테스트 실행 시 사용할 Script 선택

  • Duration: 테스트를 진행할 시간
  • Run Count: Thread 당 테스트 코드를 수행하는 횟수

  • Enable Ramp-Up: 테스트 진행 시 가상 사용자(Vuser)을 점진적으로 증가
  • Initial Count: 처음 시작 가상 사용자(Vuser) 수
  • Initial Sleep Time: 테스트 시작 시간(ms 단위)
  • Incremental Step: Process 또는 Thread를 증가시키는 개수
  • Interval: Process 또는 Thread를 증가시키는 시간 간격

주의해야 할 점

부하 테스트를 진행하게 되면 많은 API 요청을 보내게 된다. 이 때, Amazon RDS나 Amazon S3 같은 외부 서비스를 함께 사용하는 API(과금이 발생되는)를 호출 시, 과금이 발생하기 때문에 이에 대한 예측과 충분한 판단 하에 테스트를 진행해야 한다.

'Backend' 카테고리의 다른 글

nGrinder 성능 테스트 #1 - 시작하기  (0) 2026.08.22
CI/CD란 무엇일까?  (0) 2026.08.22
Spring Boot와 React간 개발 환경 연동  (0) 2026.08.22