TIL

7_5.성능 검증을 위한 NGrinder 설정과 실습

꿀승 2025. 2. 10. 15:54
728x90
반응형
SMALL

학습내용

  1. 부하 테스트
  2. nGrinder 사용

학습정리

1. 부하 테스트

  • 주요목적
    • 동시 요청 처리 능력 확인
    • 주요 성능 지표 측정
    • 병목 구간 파악 및 개선
  • 동시 요청 처리량과 병목 구간 확인
    • TPS (Transaction Per Second) : 초당 처리 할 수 있는 트랜잭션의 수
    • 응답 시간 (Response Time) : 요청이 서버에 전달 된 순간부터 응답 받기까지의 시간
    • 병목 구간 : 시스템 처리량이 급격히 감소하거나 응답 시간이 증가하는 특정 구간
      • CPU 사용량 초과
      • DB 잠금 대기 (데드락)
      • 네트워크 대역폭 한

2. nGrinder 사용

  1. jdk 11 버전 셋팅
  2. https://github.com/naver/ngrinder/releases ngrinder war 파일 설치
  3. 실행
    java -Djava.io.tmpdir={ngrinder war설치경로}/lib -jar ngrinder-controller-3.5.9-p1.war --port=7070
    • 포트 설정을 안하면 기본 포트 8080 으로 설정
    • ip관련 오류 발생시
      cd /User/유저명/.ngrinder
      system.conf에 들어가서 
      controller.host=127.0.0.1 설정 후 재시작
  4. localhost:7070 접속 기본 계정 admin/admin
    • 실행시 설정한 포트로 접속
  5. Agent 설치
    • 우측 상단 admin -> Download Agent
    • 해당 zip 파일 압축 해제 후 run_agent 실행 (sh/bat)
  6. Script 생성
    • 상단 메뉴 Script -> Create -> 이름 및 URL to be tested 작성
      • url은 localhost는 적용 안되니 127.0.01 로 진행
    • 생성 후 Save -> Validate 적용
      • Validate 6X 에러 뜨면 java 버전확인
  7. 퍼포먼스 테스트 진행
    • 상단에 Performance Test -> Create -> 해당 항목들 설정 후 Save And Start -> 스케줄링 또는 바로 실행
      • Agent : 퍼포먼스 테스트 실행할 Agent 수 설정
      • Vuser per agent : 가상 사용자 수 설정 (Processes * Threads)
      • Prcesses : 하나의 에이전트에서 실행 될 프로세스의 수
      • Threads : 각 프로세스에서 실행 할 쓰레드 수
      • Script : 전 항목에서 설정한 script 설정
      • Duration : 테스트 실행시간 설정
      • Run Count : 테스트 실행 되는 횟수 (Duration 비활성시)
  8. 테스트 결과 확인
728x90
반응형
LIST