LinuxCommandLibrary

ali

HTTP load testing tool with real-time TUI charts

TLDR

Run a basic load test against a URL
$ ali [http://host.xz]
copy
Set custom request rate and duration
$ ali --rate=[500] --duration=[5m] [http://host.xz]
copy
Send a POST request with a body file
$ ali --method=POST --body-file=[path/to/payload.json] [http://host.xz]
copy
Add custom headers
$ ali -H "Authorization: Bearer [token]" [http://host.xz]
copy
Export results to a directory
$ ali --export-to [path/to/results/] [http://host.xz]
copy

SYNOPSIS

ali [options] target

DESCRIPTION

ali is a terminal-based HTTP load testing tool that generates HTTP load and plots the results in real-time directly in the terminal. It combines the load generation capabilities of tools like vegeta with live terminal charts showing latency, percentiles (p50, p90, p95, p99), throughput, and bytes in/out. The interactive TUI supports mouse-based zooming into charts for detailed analysis.
Written in Go, ali supports HTTP/2 by default, custom TLS certificates, configurable concurrency, and result exporting for downstream analysis.

PARAMETERS

-r, --rate n

Requests per second; 0 for max speed (default: 50)
-d, --duration duration
Duration of the attack; 0s for infinite (default: 10s)
-w, --workers n
Initial number of workers (default: 10)
-m, --method method
HTTP method (default: GET)
-t, --timeout duration
Request timeout (default: 30s)
-b, --body string
Request body as a string
-B, --body-file file
Path to file for request body
-H, --header header
Custom header (repeatable)
-c, --connections n
Max idle connections per host (default: 10000)
--export-to dir
Directory to export results
--insecure
Skip TLS certificate verification
--no-http2
Disable HTTP/2
-K, --no-keepalive
Disable keep-alive connections
--resolvers addrs
Custom DNS resolver addresses

CAVEATS

The terminal UI requires a terminal that supports standard escape sequences. Running with very high request rates may be limited by system resources and network capacity. Setting duration to 0 runs the attack indefinitely until manually stopped.

HISTORY

ali was created by Ryo Nakao (nakabonne), a Go developer based in Tokyo, Japan. The tool was inspired by vegeta (HTTP load testing) and jplot (terminal plotting), combining both into a single real-time tool. It is open-source under the MIT license.

SEE ALSO

ab(1), wrk(1), curl(1), hey(1)

> TERMINAL_GEAR

Curated for the Linux community

Copied to clipboard