经验首页 前端设计 程序设计 Java相关 移动开发 数据库/运维 软件/图像 大数据/云计算 其他经验
当前位置:技术经验 » 程序设计 » 编程经验 » 查看文章
HTTP 压测工具wrk简介
来源:cnblogs  作者:AmyZYX  时间:2019/5/17 8:34:53  对本文有异议

前段时间项目压测,看到开发命令行下使用这个命令进行压测非常简洁、方便,萌发了学习的兴趣,这里仅做简单介绍。

安装

wrk支持大多数UNIX系统,不支持Windows。需要操作系统支持LuaJIT和OpenSSL。

安装:只需要从github上下载wrk源码,在项目路径下make即可。

  1. ? ~ git clone https://github.com/wg/wrk
  2. Cloning into 'wrk'...
  3. remote: Enumerating objects: 1085, done.
  4. remote: Total 1085 (delta 0), reused 0 (delta 0), pack-reused 1085
  5. Receiving objects: 100% (1085/1085), 27.42 MiB | 633.00 KiB/s, done.
  6. Resolving deltas: 100% (337/337), done.
  7. ? ~ cd wrk
  8. ? wrk git:(master) make
  9. Building LuaJIT...
  10. ==== Building LuaJI

编译后,根目录下会生成可执行文件wrk,可以拷贝到PATH包含目录中,或者直接将当前目录添加到PATH,后续就可以直接使用wrk命令。

默认情况下wrk会使用自带的LuaJIT和OpenSSL。

指定使用系统已经安装的版本如下:

  1. make WITH_LUAJIT=/usr WITH_OPENSSL=/usr

基本使用

  1. ? ~ wrk --help
  2. Usage: wrk <options> <url>
  3. Options:
  4. -c, --connections <N> Connections to keep open
  5. -d, --duration <T> Duration of test
  6. -t, --threads <N> Number of threads to use
  7. -s, --script <S> Load Lua script file
  8. -H, --header <H> Add header to request
  9. --latency Print latency statistics
  10. --timeout <T> Socket/request timeout
  11. -v, --version Print version details
  12. Numeric arguments may include a SI unit (1k, 1M, 1G)
  13. Time arguments may include a time unit (2s, 2m, 2h)

选项说明:

  • -c,跟服务器建立连接并保持的TCP连接数量
  • -d,压测时长,支持时间单位:s,m,h
  • -t,线程数
  • -s,指定Lua脚本路径
  • -H, - - header 为每一个HTTP请求添加HTTP头
  • --latency 压测结束后,打印延迟统计信息
  • --timeout 超时时间
  • -v,打印版本信息

优点

优点:

  • wrk使用方便,结果清晰
  • 因为非阻塞IO的使用,可以在普通测试机上创建出大量的连接,从而达到较好的压测效果

缺点:

  • 只能单机压测,适合简单场景的快速验证

其他

支持lua脚本,详见介绍见:<https://www.cnblogs.com/xinzhao/p/6233009.html

原文链接:http://www.cnblogs.com/amyzhu/p/10874280.html

 友情链接:直通硅谷  点职佳  北美留学生论坛

本站QQ群:前端 618073944 | Java 606181507 | Python 626812652 | C/C++ 612253063 | 微信 634508462 | 苹果 692586424 | C#/.net 182808419 | PHP 305140648 | 运维 608723728

W3xue 的所有内容仅供测试,对任何法律问题及风险不承担任何责任。通过使用本站内容随之而来的风险与本站无关。
关于我们  |  意见建议  |  捐助我们  |  报错有奖  |  广告合作、友情链接(目前9元/月)请联系QQ:27243702 沸活量
皖ICP备17017327号-2 皖公网安备34020702000426号