본문 바로가기
dev

oha - HTTP load generator (성능 테스트)

by igooo 2025. 5. 20.
728x90

개요

API 서비스를 개발하고 성능 테스트를 할 때는 주로 nGrinder를(참고 https://blog.igooo.org/138) 사용하여 성능 테스트를 진행한다. nGrinder를 사용하여 테스트를 하려면 설치도 해야 하고 스크립트도 작성해야 하는 번거로움이 있어서 간단한 성능 테스트기를 찾아보다가 가볍게 설치해서 사용할 수 있고, 다양한 OS에서 사용할 수 있는 oha라는 성능 테스트 툴이 있어서 공유한다.

 

oha

oha는 가벼운 프로그램으로 rust로 개발되었다.

 

Installation

rust 개발환경이 구성되어 있으면 다음 링크를 참조한다. 

https://github.com/hatoo/oha

 

Download pre-built binary

OS 별로 미리 빌드된 바이너리를 사용하려면 아래 링크를 참조한다.

https://github.com/hatoo/oha

 

On Arch Linux

pacman -S oha

 

On macOS

brew install oha

 

On Windows(winget)

winget install hatoo.oha

 

On Debian

echo "deb [signed-by=/usr/share/keyrings/azlux-archive-keyring.gpg] http://packages.azlux.fr/debian/ stable main" | sudo tee /etc/apt/sources.list.d/azlux.list
sudo wget -O /usr/share/keyrings/azlux-archive-keyring.gpg https://azlux.fr/repo.gpg
apt update
apt install oha

 

 

Usage

간단하게 아래와 같이 URL에 대하여 5000번 테스트를 수행할 수 있다.

% oha -n 5000 http://localhost:8080/api/v1.0/performance

상세 사용법은 아래 링크를 참고한다.

https://github.com/hatoo/oha?tab=readme-ov-file#usage

 

테스트가 진행되면 아래와 같이 진행률을 볼 수 있다.

 

테스트가 완료되면 아래와 같이 테스트 결과를 확인 할 수 있다.

 

마무리

oha를 사용하면 모든 OS에 쉽게 설치하여 사용 가능하며, json으로 결과를 출력할 수 있어서 성능 테스트를 쉽게 진행하고 결과를 분석할 수 있다.

728x90

'dev' 카테고리의 다른 글

LLM 프롬프트 디자인  (0) 2024.11.12
Dapr Quick Start  (0) 2024.06.05
docker  (0) 2016.02.24
git remote 변경, hook 처리  (0) 2014.01.10
용어 정리  (0) 2010.08.24