Post

nGrinder

nGrinder

Ngrinder란?

네이버에서 성능 측정 목적으로 개발된 오픈소스 프로젝트이며, The Grinder라는 오픈소스 기반으로 개발되었습니다. nGrinder는 서버에 대한 부하 테스트를 하는 것으로 서버의 성능을 측정할 수 있습니다.

성능 테스트

성능 테스트 전략 수립 단계 중 가장 핵심은 바로 서비스할 소프트웨어에 대한 명확한 목표를 수립하는 것이다. 이 목표를 달성하기 위해 성능 테스트와 부하 테스트를 수행하고 튜닝 작업을 진행합니다.

만일 튜닝을 해도 목표를 달성하지 못한다면 하드웨어 증설이나 아키텍처 변경을 고려해 볼 필요가 있습니다.

  1. 서비스가 얼마나 빠른지(Time)
  2. 일정 시간 동안 얼마나 많이 처리할 수 있는지(TPS)
  3. 얼마나 많은 사람들이 동시에 사용할 수 있는지(Users)에 대해 이야기해야 합니다.

nGrinder 구성

Controller

  • 웹 기반의 GUI 시스템
  • 유저 관리 (각자 시나리오 작성 가능)
  • 에이전트 관리
  • 부하 테스트 실시 & 모니터링
  • 부하 시나리오 작성 테스트 내역을 저장하고 재활용 가능

agent

  • 부하를 발생시키는 대상(주체)
  • controller의 지휘를 받는다.
  • 여러 머신에 설치해서 controller의 신호에 따라 일시에 부하를 발생 가능
  • 테스트하려는 머신에 agent 설치

target

  • 테스트하려는 target 머신이다

nGrinder 결과

간단히 tps는 높을수록 테스트 시간(100~500을 목표)과 에러는 적을수록 좋습니다.

This post is licensed under CC BY 4.0 by the author.