웹 애플리케이션과 기타 서비스의 부하 및 성능을 측정하는 오픈 소스 Java 애플리케이션입니다.
codesenberg/bombardier
고성능 요청 처리를 위해 fasthttp를 기반으로 만든 Go 언어의 크로스 플랫폼 HTTP(S) 벤치마킹 및 부하 테스트 CLI 도구입니다.
- 스타
- 6,843
- 포크
- 332
- 열린 이슈
- 30
- 마지막 커밋
- 13일 전
어떤 프로젝트인가요?
bombardier는 HTTP 및 HTTPS 서비스의 부하를 테스트하는 CLI 도구입니다. URL과 동시 연결 수, 그리고 요청 횟수 또는 테스트 시간을 지정하면 초당 요청 수, 지연 시간 통계, HTTP 상태 코드별 건수, 오류, 처리량을 보여줍니다.
기본적으로 속도를 위해 Go 표준 net/http 라이브러리 대신 fasthttp 클라이언트를 사용합니다. v1.1부터는 플래그로 net/http 클라이언트로 전환할 수 있습니다. HTTP/2.x 서비스를 테스트하거나 RFC를 더 충실히 따르는 클라이언트가 필요할 때 유용합니다. Linux, macOS, Windows용 사전 빌드 바이너리를 제공하며, go install로 설치할 수도 있습니다.
알려진 제한 사항 중 하나는 fasthttp에서 Host 헤더를 올바르게 설정할 수 없다는 점입니다. 문서에서는 이를 해결하는 방법으로 net/http 모드(--http1 또는 --http2)를 안내합니다.
핵심 기능
- 01동시 연결 수를 설정해 HTTP 및 HTTPS 엔드포인트에 부하 테스트를 실행합니다.
- 02고정된 요청 횟수 또는 고정된 시간 동안 실행합니다.
- 03초당 요청 수, 지연 시간, 상태 코드별 결과, 처리량을 보여줍니다.
- 04기본 fasthttp 클라이언트와 HTTP/2.x 테스트용 net/http 클라이언트를 제공합니다.
- 05Linux, macOS, Windows용 사전 빌드 바이너리를 제공합니다.
활용 사례
- 웹 서비스나 API가 초당 처리할 수 있는 요청 수를 측정합니다.
- 동시 부하 상황에서 지연 시간 분포와 오류율을 확인합니다.
- 변경 전후의 서버 성능을 비교합니다.
빠른 시작
- 1
Go 1.18 이상에서 go install을 사용해 설치합니다
go install github.com/codesenberg/bombardier@latest - 2
125개의 연결과 1,000만 개의 요청으로 URL을 대상으로 벤치마크를 실행합니다
bombardier -c 125 -n 10000000 http://localhost:8080
사용 전 알아둘 점
- 기본 fasthttp 클라이언트는 Host 헤더를 올바르게 전달하지 못하므로, 해결 방법으로 --http1 또는 --http2 플래그(net/http)를 사용하세요.
포함된 컬렉션
토픽
자주 묻는 질문
- bombardier은(는) 무엇인가요?
- 고성능 요청 처리를 위해 fasthttp를 기반으로 만든 Go 언어의 크로스 플랫폼 HTTP(S) 벤치마킹 및 부하 테스트 CLI 도구입니다. bombardier는 HTTP 및 HTTPS 서비스의 부하를 테스트하는 CLI 도구입니다. URL과 동시 연결 수, 그리고 요청 횟수 또는 테스트 시간을 지정하면 초당 요청 수, 지연 시간 통계, HTTP 상태 코드별 건수, 오류, 처리량을 보여줍니다.
- bombardier은(는) 무료로 사용할 수 있나요? 라이선스는 무엇인가요?
- bombardier은(는) MIT 라이선스의 오픈소스입니다. 상업용 제품에 사용하기 전에 라이선스 조건을 확인하세요.
- bombardier은(는) 아직 유지보수되고 있나요?
- 활발히 유지보수 중. bombardier의 마지막 커밋은 2026년 10월 10일입니다.
- bombardier은(는) 어디에 사용할 수 있나요?
- 웹 서비스나 API가 초당 처리할 수 있는 요청 수를 측정합니다. 동시 부하 상황에서 지연 시간 분포와 오류율을 확인합니다. 변경 전후의 서버 성능을 비교합니다.
- bombardier는 어떻게 설치하나요?
- Go 1.18 이상에서 go install을 사용해 설치합니다: go install github.com/codesenberg/bombardier@latest 125개의 연결과 1,000만 개의 요청으로 URL을 대상으로 벤치마크를 실행합니다: bombardier -c 125 -n 10000000 http://localhost:8080
- bombardier은(는) 어디서 받을 수 있나요?
- 소스 코드와 설치 방법은 GitHub에 있습니다: https://github.com/codesenberg/bombardier
요약은 프로젝트 README를 바탕으로 AI가 작성했습니다. GitHub 통계는 매일 갱신됩니다.
관련 프로젝트
fasthttp로 요청을 보내고, 실시간 터미널 화면과 웹 차트를 제공하는 Go 기반 HTTP(S) 부하 테스트 CLI입니다.
실행 중인 eBPF 프로그램의 런타임, 초당 이벤트 수, 예상 CPU 사용량을 보여주는 터미널 기반 top 스타일 모니터입니다.
Martini와 비슷한 API를 제공하며 REST API, 웹 앱, 마이크로서비스 구축에 적합한 고성능 Go HTTP 웹 프레임워크입니다.
프로세스별 스레드, 메모리, 핸들, 소켓, 모듈 등을 자세히 보여 주는 Windows 및 Linux용 작업 관리자 대체 도구입니다.
파일을 병렬 청크로 나누고 여러 미러에서 다운로드하는 Go 기반 키보드 중심 터미널 다운로드 관리자