{
"name": "autocannon",
"description": "Fast HTTP/1.1 benchmarking tool written in Node.js",
"options": [
{
"names": [
"-c",
"--connections"
],
"description": "The number of concurrent connections to use",
"takes_arg": true,
"arg": {
"name": "NUM"
}
},
{
"names": [
"-p",
"--pipelining"
],
"description": "The number of pipelined requests to use",
"takes_arg": true,
"arg": {
"name": "NUM"
}
},
{
"names": [
"-d",
"--duration"
],
"description": "The number of seconds to run the autocannon",
"takes_arg": true,
"arg": {
"name": "SEC"
}
},
{
"names": [
"-a",
"--amount"
],
"description": "The number of requests to make before exiting the benchmark",
"takes_arg": true,
"arg": {
"name": "NUM"
}
},
{
"names": [
"-L"
],
"description": "The number of milliseconds to elapse between taking samples. This controls the sample interval, & therefore the total number of samples, which affects statistical analyses",
"takes_arg": true,
"arg": {
"name": "NUM"
}
},
{
"names": [
"-S",
"--socketPath"
],
"description": "A path to a Unix Domain Socket or a Windows Named Pipe. A URL is still required to send the correct Host header and path",
"takes_arg": true,
"arg": {
"name": "PATH"
}
},
{
"names": [
"-w",
"--workers"
],
"description": "Number of worker threads to use to fire requests",
"takes_arg": true,
"arg": {
"name": "NUM"
}
},
{
"names": [
"-W",
"--warmup"
],
"description": "Use a warm up interval before starting sampling. This enables startup processes to finish and traffic to normalize before sampling begins",
"takes_arg": true,
"arg": {
"name": "-c"
}
},
{
"names": [
"--on-port"
],
"description": "Start the command listed after -- on the command line. When it starts listening on a port, start sending requests to that port. A URL is still required to send requests to the correct path. The hostna",
"takes_arg": true,
"arg": {
"name": "PORT"
}
},
{
"names": [
"-m",
"--method"
],
"description": "The HTTP method to use",
"takes_arg": true,
"arg": {
"name": "METHOD",
"suggestions": [
"GET",
"POST",
"PUT",
"DELETE",
"PATCH",
"HEAD",
"OPTIONS",
"TRACE"
]
}
},
{
"names": [
"-t",
"--timeout"
],
"description": "The number of seconds before timing out and resetting a connection",
"takes_arg": true,
"arg": {
"name": "NUM"
}
},
{
"names": [
"-T",
"--title"
],
"description": "The title to place in the results for identification",
"takes_arg": true,
"arg": {
"name": "TITLE"
}
},
{
"names": [
"-b",
"--body"
],
"description": "The body of the request",
"takes_arg": true,
"arg": {
"name": "BODY"
}
},
{
"names": [
"-F",
"--form"
],
"takes_arg": true,
"arg": {
"name": "FORM"
}
},
{
"names": [
"-i",
"--input"
],
"description": "The body of the request",
"takes_arg": true,
"arg": {
"name": "FILE"
}
},
{
"names": [
"-H",
"--headers"
],
"description": "The request headers",
"takes_arg": true,
"arg": {
"name": "K=V"
}
},
{
"names": [
"--har"
],
"description": "When provided, Autocannon will use requests from the HAR file",
"takes_arg": true,
"arg": {
"name": "FILE",
"template": "filepaths"
}
},
{
"names": [
"-B",
"--bailout"
],
"description": "The number of failures before initiating a bailout",
"takes_arg": true,
"arg": {
"name": "NUM"
}
},
{
"names": [
"-M",
"--maxConnectionRequests"
],
"description": "The max number of requests to make per connection to the server",
"takes_arg": true,
"arg": {
"name": "NUM"
}
},
{
"names": [
"-O",
"--maxOverallRequests"
],
"description": "The max number of requests to make overall to the server",
"takes_arg": true,
"arg": {
"name": "NUM"
}
},
{
"names": [
"-r",
"--connectionRate"
],
"description": "The max number of requests to make per second from an individual connection",
"takes_arg": true,
"arg": {
"name": "NUM"
}
},
{
"names": [
"-R",
"--overallRate"
],
"description": "The max number of requests to make per second from all connections",
"takes_arg": true,
"arg": {
"name": "NUM"
}
},
{
"names": [
"-C",
"--ignoreCoordinatedOmission"
],
"description": "Ignore the coordinated omission issue when requests should be sent at a fixed rate using 'connectionRate' or 'overallRate'"
},
{
"names": [
"-D",
"--reconnectRate"
],
"description": "The number of requests to make before resetting a connections connection to the server",
"takes_arg": true,
"arg": {
"name": "NUM"
}
},
{
"names": [
"-n",
"--no-progress"
],
"description": "Don't render the progress bar. default: false"
},
{
"names": [
"-l",
"--latency"
],
"description": "Print all the latency data. default: false"
},
{
"names": [
"-I",
"--idReplacement"
],
"description": "Enable replacement of [<id>] with a randomly generated ID within the request body. default: false"
},
{
"names": [
"-j",
"--jsonPath"
],
"description": "Print the output as newline delimited JSON. This will cause the progress bar and results not to be rendered"
},
{
"names": [
"-f",
"--forever"
],
"description": "Run the benchmark forever. Efficiently restarts the benchmark on completion"
},
{
"names": [
"-s",
"--servername"
],
"description": "Server name for the SNI (Server Name Indication) TLS extension. Defaults to the hostname of the URL when it is not an IP address"
},
{
"names": [
"-x",
"--excludeErrorStats"
],
"description": "Exclude error statistics (non-2xx HTTP responses) from the final latency and bytes per second averages. default: false"
},
{
"names": [
"-E",
"--expectBody"
],
"description": "Ensure the body matches this value. If enabled, mismatches count towards bailout. Enabling this option will slow down the load testing",
"takes_arg": true,
"arg": {
"name": "EXPECTED"
}
},
{
"names": [
"--renderStatusCodes"
],
"description": "Print status codes and their respective statistics"
},
{
"names": [
"--cert"
],
"description": "Path to cert chain in pem format",
"takes_arg": true,
"arg": {
"name": "FILE",
"template": "filepaths"
}
},
{
"names": [
"--key"
],
"description": "Path to private key for specified cert in pem format",
"takes_arg": true,
"arg": {
"name": "FILE",
"template": "filepaths"
}
},
{
"names": [
"--ca"
],
"description": "Path to trusted ca certificates for the test. This argument accepts both a single file as well as a list of files",
"takes_arg": true,
"arg": {
"name": "FILE",
"is_variadic": true,
"template": "filepaths"
}
},
{
"names": [
"--debug"
],
"description": "Print connection errors to stderr"
},
{
"names": [
"-v",
"--version"
],
"description": "Print the version number"
},
{
"names": [
"-V",
"--verbose"
],
"description": "Print the table with results (default: true)"
},
{
"names": [
"-h",
"--help"
],
"description": "Print help"
}
],
"args": [
{
"name": "URL",
"description": "The URL to benchmark"
}
]
}