主机评测 - http
type: channel
link: https://zjpc.cc/tag/http/
items: 开源HTTP压力测试工具hey安装使用教程

开源HTTP压力测试工具hey安装使用教程
type: item
date: 2021-01-17T21:12:07+08:00
description: hey是一款使用Golang开发的HTTP压力测试工具，可作为ApacheBench (ab)替代品，在之前的文章中《socat与Brook端口转发测试对比哪个更好？》有提到hey这个工具，这篇文章来详细说明下hey的安装和使用。安装hey以下使用Linux 64位系统，如果您是其它操作系统，请自行前往hey项目地址下载对应客户端。作者已经提供编译好的二进制包，可直接下载使用：#下载hey wget https://hey-release.s3.us-east-2.amazonaws.com/hey_linux_amd64 #赋予执行权限 chmod +x hey_linux_amd64 #移动文件到sbin目录 mv hey_linux_amd64 /usr/sbin/hey如果是其它操作系统，请对号入座：Linux 64-bit: https://hey-release.s3.us-east-2.amazonaws.com/hey_linux_amd64Mac 64-bit: https://hey-release.s3.us-east-2.amazonaws.com/hey_darwin_amd64Windows 64-bit: https://hey-release.s3.us-east-2.amazonaws.com/hey_windows_amd64hey的使用输入hey -h查看帮助信息：flag needs an argument: -h Usage: hey [options...] <url> Options: -n Number of requests to run. Default is 200. -c Number of workers to run concurrently. Total number of requests cannot be smaller than the concurrency level. Default is 50. -q Rate limit, in queries per second (QPS) per worker. Default is no rate limit. -z Duration of application to send requests. When duration is reached, application stops and exits. If duration is specified, n is ignored. Examples: -z 10s -z 3m. -o Output type. If none provided, a summary is printed. "csv" is the only supported alternative. Dumps the response metrics in comma-separated values format. -m HTTP method, one of GET, POST, PUT, DELETE, HEAD, OPTIONS. -H Custom HTTP header. You can specify as many as needed by repeating the flag. For example, -H "Accept: text/html" -H "Content-Type: application/xml" . -t Timeout for each request in seconds. Default is 20, use 0 for infinite. -A HTTP Accept header. -d HTTP request body. -D HTTP request body from file. For example, /home/user/file.txt or ./file.txt. -T Content-type, defaults to "text/html". -a Basic authentication, username:password. -x HTTP Proxy address as host:port. -h2 Enable HTTP/2. -host HTTP Host header. -disable-compression Disable compression. -disable-keepalive Disable keep-alive, prevents re-use of TCP connections between different HTTP requests. -disable-redirect…