返回排行榜

codesenberg/bombardier

Go

Fast cross-platform HTTP benchmarking tool written in Go

fasthttpclibenchmarkingbombardiergogolangperformancelinuxwindowsmacosload-testing
Star 增长趋势
Star
6.8k
Forks
329
周增长
Issues
19
2k4k6k
2016年6月2019年10月2023年3月2026年7月
制品库Go Modulesgo get github.com/codesenberg/bombardier
README

bombardier Build Status Go Report Card GoDoc

Logo bombardier is a HTTP(S) benchmarking tool. It is written in Go programming language and uses excellent fasthttp instead of Go's default http library, because of its lightning fast performance.

With bombardier v1.1 and higher you can now use net/http client if you need to test HTTP/2.x services or want to use a more RFC-compliant HTTP client.

Installation

You can grab binaries in the releases section. Alternatively, to get latest and greatest run:

Go 1.18+: go install github.com/codesenberg/bombardier@latest

Usage

bombardier [<flags>] <url>

For a more detailed information about flags consult GoDoc.

Known issues

AFAIK, it's impossible to pass Host header correctly with fasthttp, you can use net/http(--http1/--http2 flags) to workaround this issue.

Examples

Example of running bombardier against this server:

> bombardier -c 125 -n 10000000 http://localhost:8080
Bombarding http://localhost:8080 with 10000000 requests using 125 connections
 10000000 / 10000000 [============================================] 100.00% 37s Done!
Statistics        Avg      Stdev        Max
  Reqs/sec    264560.00   10733.06     268434
  Latency      471.00us   522.34us    51.00ms
  HTTP codes:
    1xx - 0, 2xx - 10000000, 3xx - 0, 4xx - 0, 5xx - 0
    others - 0
  Throughput:   292.92MB/s

Or, against a realworld server(with latency distribution):

> bombardier -c 200 -d 10s -l http://ya.ru
Bombarding http://ya.ru for 10s using 200 connections
[=========================================================================] 10s Done!
Statistics        Avg      Stdev        Max
  Reqs/sec      6607.00     524.56       7109
  Latency       29.86ms     5.36ms   305.02ms
  Latency Distribution
     50%    28.00ms
     75%    32.00ms
     90%    34.00ms
     99%    48.00ms
  HTTP codes:
    1xx - 0, 2xx - 0, 3xx - 66561, 4xx - 0, 5xx - 0
    others - 5
  Errors:
    dialing to the given TCP address timed out - 5
  Throughput:     3.06MB/s
相关仓库
gofiber/fiber

⚡️ Express inspired web framework written in Go

GoGo ModulesMIT Licensegogolang
gofiber.io
40k2k
bazelbuild/bazel

a fast, scalable, multi-language and extensible build system

JavaMavenApache License 2.0bazelbuild
bazel.build
25.6k4.5k
pinojs/pino

🌲 super fast, all natural json logger

JavaScriptnpmMIT Licenseloggerfast
getpino.io
18.1k981
adityatelange/hugo-PaperMod

A fast, clean, responsive Hugo theme.

HTMLMIT Licensefastclean
adityatelange.github.io/hugo-PaperMod/
13.8k3.4k
LMCache/LMCache

LMCache: Supercharge Your LLM with the Fastest KV Cache Layer

PythonPyPIApache License 2.0amdcuda
lmcache.ai
10.8k1.6k
cdnjs/cdnjs

🤖 CDN assets - The #1 free and open source CDN built to make life easier for developers.

MIT Licensecdnjavascript
cdnjs.com
10.7k4.5k
stenzek/duckstation

Fast PlayStation 1 emulator for x86-64/AArch32/AArch64/RV64

C++Otherplaystationpsx
10.4k942
ParthJadhav/Tkinter-Designer

An easy and fast way to create a Python GUI 🐍

PythonPyPIBSD 3-Clause "New" or "Revised" Licensetkintertkinter-gui
10.3k933
mrousavy/react-native-mmkv

⚡️ The fastest key/value storage for React Native. ~30x faster than AsyncStorage!

TypeScriptnpmMIT Licensemmkvreact
mrousavy.com
8.4k338
gobwas/ws

A tiny WebSocket library for Go.

GoGo ModulesMIT Licensegowebsocket
6.5k385
Byron/dua-cli

View disk space usage and delete unwanted data, fast.

Rustcrates.ioMIT Licensediskspace-use
lib.rs/crates/dua-cli
6k159
amitshekhariitbhu/Fast-Android-Networking

🚀 A Complete Fast Android Networking Library that also supports HTTP/2 🚀

JavaMavenApache License 2.0httpnetwork
outcomeschool.com
5.9k978