Repolode
six-ddc

six-ddc/plow

fasthttp로 요청을 보내고, 실시간 터미널 화면과 웹 차트를 제공하는 Go 기반 HTTP(S) 부하 테스트 CLI입니다.

스타
4,515
포크
154
열린 이슈
20
마지막 커밋
5일 전

어떤 프로젝트인가요?

Plow는 Go로 작성된 명령줄 HTTP(S) 벤치마킹 도구입니다. 지정한 수의 동시 연결로 요청을 보내고, 테스트가 진행되는 동안 지연 시간 통계와 히스토그램, 백분위수를 기록해 터미널과 실시간 웹 페이지에 표시합니다. 테스트는 지정된 시간 동안, 지정된 요청 수만큼 실행하거나 Ctrl-C로 중단할 때까지 실행할 수 있습니다.

Plow는 Go 표준 net/http 패키지 대신 fasthttp 클라이언트 라이브러리를 사용합니다. 히스토그램과 분위수를 계산하는 스트리밍 알고리즘은 벤치마크 중 메모리와 CPU 오버헤드를 낮게 유지하도록 설계되었습니다. 선택적으로 추적 기능을 사용하면 요청 시간을 DNS, connect, TLS, write, wait, read 단계로 나눠 볼 수 있습니다.

메서드, 헤더, 요청 본문(파일 포함, 선택적으로 스트리밍), 클라이언트 TLS 인증서로 요청을 맞춤 설정할 수 있습니다. 또한 속도 제한, 램프업, SOCKS5 및 HTTP 프록시, Unix 도메인 소켓, JSON 출력도 지원합니다.

핵심 기능

  • 01터미널과 웹 UI에서 지연 시간 통계, 히스토그램, 백분위수를 실시간으로 확인할 수 있습니다.
  • 02동시성, 요청 수 또는 실행 시간을 지정해 테스트할 수 있습니다.
  • 03DNS, connect, TLS, write, TTFB, read 단계별 지연 시간을 추적할 수 있습니다.
  • 04메서드, 헤더, 파일 기반 요청 본문, 클라이언트 TLS 인증서를 설정할 수 있습니다.
  • 05속도 제한, 램프업, SOCKS5 및 HTTP 프록시 지원, JSON 출력을 제공합니다.

활용 사례

  • 릴리스 전에 HTTP API나 웹 서비스를 부하 테스트할 수 있습니다.
  • 엔드포인트나 서버 설정에 따른 응답 지연 시간을 비교할 수 있습니다.
  • DNS, connect, TTFB 중 어떤 요청 단계가 응답 지연에 가장 크게 영향을 주는지 진단할 수 있습니다.

빠른 시작

  1. 1

    Go로 plow 설치하기

    go install github.com/six-ddc/plow@latest
  2. 2

    20개 연결로 URL에 부하 테스트 실행하기

    plow http://127.0.0.1:8080/ -c 20 -n 10000 -d 10s

사용 전 알아둘 점

  • HTTP(S) 부하 테스트만 지원하며, 다른 프로토콜은 지원하지 않습니다.

포함된 컬렉션

토픽

자주 묻는 질문

plow은(는) 무엇인가요?
fasthttp로 요청을 보내고, 실시간 터미널 화면과 웹 차트를 제공하는 Go 기반 HTTP(S) 부하 테스트 CLI입니다. Plow는 Go로 작성된 명령줄 HTTP(S) 벤치마킹 도구입니다. 지정한 수의 동시 연결로 요청을 보내고, 테스트가 진행되는 동안 지연 시간 통계와 히스토그램, 백분위수를 기록해 터미널과 실시간 웹 페이지에 표시합니다. 테스트는 지정된 시간 동안, 지정된 요청 수만큼 실행하거나 Ctrl-C로 중단할 때까지 실행할 수 있습니다.
plow은(는) 무료로 사용할 수 있나요? 라이선스는 무엇인가요?
plow은(는) Apache-2.0 라이선스의 오픈소스입니다. 상업용 제품에 사용하기 전에 라이선스 조건을 확인하세요.
plow은(는) 아직 유지보수되고 있나요?
활발히 유지보수 중. plow의 마지막 커밋은 2026년 10월 17일입니다.
plow은(는) 어디에 사용할 수 있나요?
릴리스 전에 HTTP API나 웹 서비스를 부하 테스트할 수 있습니다. 엔드포인트나 서버 설정에 따른 응답 지연 시간을 비교할 수 있습니다. DNS, connect, TTFB 중 어떤 요청 단계가 응답 지연에 가장 크게 영향을 주는지 진단할 수 있습니다.
plow는 어떻게 설치하나요?
Go로 plow 설치하기: go install github.com/six-ddc/plow@latest 20개 연결로 URL에 부하 테스트 실행하기: plow http://127.0.0.1:8080/ -c 20 -n 10000 -d 10s
plow은(는) 어디서 받을 수 있나요?
소스 코드와 설치 방법은 GitHub에 있습니다: https://github.com/six-ddc/plow

요약은 프로젝트 README를 바탕으로 AI가 작성했습니다. GitHub 통계는 매일 갱신됩니다.

관련 프로젝트