Golang的压测工具hey-创新互联

go get -u github.com/rakyll/hey
go install github.com/rakyll/hey

BenchmarkStringJoin1-4 300000 4351 ns/op 32 B/op 2 allocs/op

-4表示4个CPU线程执行;300000表示总共执行了30万次;4531ns/op,表示每次执行耗时4531纳秒;32B/op表示每次执行分配了32字节内存;2 allocs/op表示每次执行分配了2次对象

https://github.com/rakyll/hey

-n 要运行的请求数。默认是200。

-c 并发运行的请求数。请求的总数不能小于并发级别。默认是50。

-q 速率限制,以每秒查询(QPS)为单位。默认没有限制。

-z 发送请求的应用程序配置。当时间到了,应用程序停止并退出。如果指定持续时间,则忽略n。例子:- z 10s - z 3m。

-o 输出类型。如果没有提供,则打印摘要。“csv”是唯一受支持的替代方案。转储文件的响应以逗号分隔值格式的度量。
-m  HTTP method, one of GET, POST, PUT, DELETE, HEAD, OPTIONS.
-H 自定义HTTP头。您可以通过重复标记指定所需的数量 For example, -H "Accept: text/html" -H "Content-Type: application/xml" 
-t 每个请求的超时时间(以秒为单位)。默认值是20,使用0表示无穷大。
-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.
-h3 Enable HTTP/2.

-host   HTTP Host header.

-disable-compression  禁用压缩。
-disable-keepalive    禁用keep-alive,防止重用TCP不同HTTP请求之间的连接。
-disable-redirects   禁用HTTP重定向的后续操作
-cpus        使用的cpu核数。(当前机器默认为48核)       

BenchmarkStringJoin1-4 300000 4351 ns/op 32 B/op 2 allocs/op

成都创新互联专注于网站建设|成都网站维护公司|优化|托管以及网络推广,积累了大量的网站设计与制作经验,为许多企业提供了网站定制设计服务,案例作品覆盖社区文化墙等行业。能根据企业所处的行业与销售的产品,结合品牌形象的塑造,量身设计品质网站。

-4表示4个CPU线程执行;300000表示总共执行了30万次;4531ns/op,表示每次执行耗时4531纳秒;32B/op表示每次执行分配了32字节内存;2 allocs/op表示每次执行分配了2次对象

curl -H "Content-Type:application/json" -X POST --data '{"uuids":["aaaa"]}' http://10.58.122.238/api/v1/1/alarms/events/4/cameras

hey -n 10 -c 2 -m PUT -T "application/json" -d '{"uuids":["bbbb"]}' http://10.58.122.238/api/v1/1/alarms/events/4/cameras


本文题目:Golang的压测工具hey-创新互联
浏览路径:http://hbruida.cn/article/eghhg.html