HTTP压力测试工具wrk的安装及测试
本次在VMware虚拟机的CentOS6.3系统中进行安装wrk压测工具,具体如下:
一、预先安装需求项
为了安装顺利,不受权限的限制,首先可以把用户切换为root用户# su + 输入root用户对应的密码
1.1 安装支持后续操作的一些组件# yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel asciidoc
1.2 安装编译套件# yum install gcc perl-ExtUtils-MakeMaker
二、安装or升级版本管理工具git
2.1 查看git版本# git --version
若libiconv字符集转换库没安装而出现错误:error: /utf8.c:463: undefined reference to 'libiconv'
解决方案:依次执行如下命令(无以上error则略过)# wget http://ftp.gnu.org/pub/gnu/libiconv/libiconv-1.14.tar.gz# tar zxvf libiconv-1.14.tar.gz# cd libiconv-1.14# ./configure --prefix=/usr/local/libiconv# make && make install
2.2 卸载旧版本git
在CentOS6.3系统环境下,如果以上查询的版本比较早(如:1.7.1版本),对后续的安装wrk会受到阻碍,故需升级git到新版本(如:2.2.1版本)
卸载旧版本的目录为:# yum remove git
2.3 安装新版本git
1)下载git 2.2.1进行编译安装;2)将git添加到环境变量# wget https://github.com/git/git/archive/v2.2.1.tar.gz# tar -zxvf v2.2.1# cd git-2.2.1# make configure# ./configure --prefix=/usr/local/git --with-iconv=/usr/local/libiconv# make all doc# make install install-doc install-html# echo "export PATH=$PATH:/usr/local/git/bin" >> /etc/bashrc# source /etc/bashrc
再次查看安装新版本git后的效果:git --version
三、正式安装wrk
切换到src目录,再次检验是否安装git# cd /usr/local/src# yum install git -y
3.1 克隆wrk安装文件到本地# git clone https://github.com/wg/wrk.git
3.2 编译wrk文件# cd wrk# make
若出现错误:xmlto: command not found,可以尝试重新安装xmlto:# yum -y install xmlto
3.3 创建软链接到指定目录# ln -s /usr/local/src/wrk/wrk /usr/local/bin
3.4 检验wrk是否安装成功# wrk

四、wrk性能测试
4.1 配置待测网站的IP指向到内网
根据测试环境的要求,进行环境配置,比如有的网站不允许在外网正式环境进行压测,就需要配置一个指向内网的环境进行测试
打开hosts编辑器# vim /etc/hosts
配置当前环境的hosts,格式为:
# IP1 url1
# IP2 url2
...
# IPx urlx
ESC键从编辑模式切换到正常模式,然后输入:wq保存并退出
4.2 测试http协议网站的性能
[root@localhost /]# wrk -t2 -c10 -d15 --latency http://www.baidu.com
Running 15s test @ http://www.baidu.com
2 threads and 10 connections
Thread Stats Avg Stdev Max +/- Stdev
Latency 35.64ms 1.31ms 48.59ms 79.38%
Req/Sec 138.40 13.52 151.00 89.00%
Latency Distribution
50% 35.50ms
75% 36.13ms
90% 37.09ms
99% 40.33ms
4151 requests in 15.05s, 60.83MB read
Socket errors: connect 0, read 29, write 0, timeout 0
Requests/sec: 275.72
Transfer/sec: 4.04MB
4.3 wrk参数含义
1)语法中的参数
-t:需要模拟的线程数
-c:需要模拟的连接数
-d:测试的持续时间
--timeout:超时的时间
--latency:显示延迟统计
2)结果显示的指标
Latency:响应时间
Req/Sec:每个线程每秒钟的完成的请求数
Avg:平均
Max:最大
Stdev:标准差
HTTP压力测试工具wrk的安装及测试的更多相关文章
- 渗透测试工具BurpSuite做网站的安全测试(基础版)
渗透测试工具BurpSuite做网站的安全测试(基础版) 版权声明:本文为博主原创文章,未经博主允许不得转载. 学习网址: https://t0data.gitbooks.io/burpsuite/c ...
- 图文详解压力测试工具JMeter的安装与使用
压力测试是目前大型网站系统的设计和开发中不可或缺的环节,通常会和容量预估等工作结合在一起,穿插在系统开发的不同方案.压力测试可以帮助我们及时发现系统的性能短板和瓶颈问题,在这个基础在上再进行针对性的性 ...
- 测试工具之RobotFramework安装
Robot Framework很多公司再用,图形化界面,类表格填写关键字和参数,几乎不需要编码知识,上手很快 最近看到某满公司使用的就是这个工具,特地看了下,确实很简单,对于初入测试行业的人来说是个很 ...
- 安卓渗透测试工具——Drozer(安装和使用)
移动端渗透测试工具相比丰富的web端真的是少之又少,最近在做app的安全测试,用到了drozer,drozer的安装过程真的是太心酸了,中间报错了有6次才成功安装.. 一.环境准备 首先准备以下环境: ...
- 【测试工具】这些APP实用测试工具,不知道你就out了!
本期,我将给大家介绍14款实用的测试工具,希望能够帮到大家!(建议收藏) UI自动化测试工具 1. uiautomator2 Github地址:https://github.com/openatx/u ...
- 网站压力测试工具http_load的安装与使用
一.安装 1.下载地址:http://www.acme.com/software/http_load/http_load-09Mar2016.tar.gz 2.解压后进入目录,执行make & ...
- Centos7 编译测试工具 wrk bombardier iftop
1.wrk 安装及使用----------------------------------------------------------------------------------------- ...
- [原创]Fitnesse测试工具介绍及安装
1 Fitnesse简介 Fitnesse是一款开源的验收测试框架,完全有java语言编写完成,支持多语言软件产品的测试,包括(java,c,c++,python,php),在Fitnesse框架中, ...
- 自然语言处理标注工具——Brat(安装、测试、使用)
一.Brat标注工具安装 1.安装条件: (1)运行于Linux系统(window系统下虚拟机内linux系统安装也可以) (2)目前brat最新版本(v1.3p1)仅支持python2版本运行使用( ...
随机推荐
- 06 django的用户认证组件
1.用户认证组件 用户认证组件: 功能:用session记录登录验证状态 前提:用户表:django自带的auth_user 创建超级用户: python3 manage.py createsuper ...
- 使用Themeleaf时, HTML内嵌的JS代码需要注意< 和 >的问题
如果你使用了Themeleaf, 你的HTML文件又使用了内嵌的JS代码,那么一定要注意 你的JS代码必须用这样用: <script> /*<![CDATA[*/ var a = 6 ...
- UWP 使用HttpClient获取网页数据
我的App自然灾害中,为了展示地震的各种信息,就需要从网页上获取地震源数据. 如图所示,我们需要展示 地震等级.地震发生时间.经纬度.震源深度.地震位置等信息. 那么,假设给了一个地震的源,中国地震台 ...
- javaweb学习4——HttpServletRequest的使用
声明:本文只是自学过程中,记录自己不会的知识点的摘要,如果想详细学习JavaWeb,请到孤傲苍狼博客学习,JavaWeb学习点此跳转 本文链接:https://www.cnblogs.com/xdp- ...
- 简单的redis工具类
import java.util.Arrays; import java.util.List;import java.util.Set; import org.apache.commons.lang. ...
- 如何fork比特币的源码并同步更新到本地
一.首先在Github上fork比特币源码,就会在自己的项目库里创建一份比特币代码的拷贝. 打开https://github.com/bitcoin/bitcoin,点击右上角的“Fok”图标,稍 ...
- 解决java读取大文件内存溢出问题
1. 传统方式:在内存中读取文件内容 读取文件行的标准方式是在内存中读取,Guava 和Apache Commons IO都提供了如下所示快速读取文件行的方法: Files.readLines(new ...
- 客户端传入数据的校验-RestController进阶
使用Hibernate Validator进行数据校验 Bean Validation注解(需要加入相关依赖,在SpringBoot中可以直接使用,SpringBoot会帮我们直接加入) @Null ...
- 【Go】Mac上安装Go
一:首先安装brew,方便管理,安装方法,终端中输入 ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/ins ...
- valgrind使用简介
1.问题 虽然C/C++是一种非常有用且功能强大的语言,但很难调试. 某些时候可能遇到内存错误. 如果知道出错 ,或者程序一直崩溃,我们可以用gdb/DBX去调试. 但是,有时遇到的问题是由于内存错误 ...