Web压测工具之Webbench和http_load
Webbench简介
是知名的网站压力测试工具,能测试处在相同硬件上,不同服务的性能以及不同硬件上同一个服务的运行状况。
webbench的标准测试可以向我们展示服务器的两项内容:每秒钟相应请求数和每秒钟传输数据量。
Webbench最多可以模拟3万个并发连接去测试网站的负载能力
# 1.特点中规中矩,比较稳定
# 2.可以设置并发数和运行测试时间
# 3.可以对php,jsp等网页进行测试
# 综合来说,功能一般,但是胜在稳定,可以对页面进行测试并直接显示每秒响应数和流量
部署
# 安装依赖编辑器
yum install -y gcc ctags make
wget http://www.ha97.com/code/webbench-1.5.tar.gz
tar zxvf webbench-1.5.tar.gz
cd webbench-1.5
make && make install
使用案例
前面必须带http,最后面必须带/
-c指定并发,-t运行几秒,不确定每秒访问多少
webbench -c 2000 -t 2 http://192.168.2.38/
#请求页面为xxx
Benchmarking: GET http://192.168.2.38/
#并发2000,运行5秒
2000 clients, running 2 sec.
#每分钟访问页面数量,每分钟字节数
Speed=409349 pages/min, 5757768 bytes/sec.
#请求13645次,失败0
Requests: 13645 susceed, 0 failed.
Http_load简介
http_load以并行复用的方式运行,用以测试Web服务器的吞吐量与负载。但是它不同于大多数压力测试工具,其可以以一个单一的进程运行,这样就不会把客户机搞死,还可以测试HTTPS类的网站请求
# 1 . 它是读取文件方式来测试,文件中可以填写多个URL
# 2 . 可以设置1000并发,执行100次
# 3 . 可以设置100个并发,执行一小时
# 4 . 可以设置每秒100个请求,请求1000次
# 5 . 可以设置每秒100个请求,执行一小时
# 适合一个网站多个页面,长久的测试,看访问压力。但因为是单线程的,导致不能并发去访问
部署
yum -y install gcc cmake
# 然后创建存放说明的文件夹,否则编译报错
mkdir /usr/local/man
wget http://www.acme.com/software/http_load/http_load-12mar2006.tar.gz
tar -xzvf http_load-12mar2006.tar.gz
cd http_load-12mar2006
make && make install
使用案例
# 首先创建url文件
vim url.txt
echo "http://192.168.2.38/" >> url.txt
# 2000并发,总数为1万
http_load -p 2000 -f 10000 url.txt
# 测试中运行了1000个请求,最大的并发进程数是270(自己设置的,但差不少),总计传输的数据是6.12e+06 bytes,运行的时间是2.74116秒
10000 fetches, 270 max parallel, 6.12e+06 bytes, in 2.74116 seconds
# 每个连接平均传输的数据量
612 mean bytes/connection
# 说明每秒的响应请求数为3648,每秒传递的数据为2.23263e+06 bytes
3648.09 fetches/sec, 2.23263e+06 bytes/sec
# 每次连接的平均响应时间是11.4839毫秒,最大响应时间1007.84,最小响应时间0.104
msecs/connect: 11.4839 mean, 1007.84 max, 0.104 min
# 说明每个请求的平均响应时间是13.4338毫秒,最大233.393,最小1.238
msecs/first-response: 13.4338 mean, 233.393 max, 1.238 min
# 说明打开响应页面的类型,如果403的类型过多,那可能要注意是否系统遇到了瓶颈。当前1000个都返回200
HTTP response codes:
code 200 -- 10000
参数
# 命令格式:http_load -p 并发访问进程数 -s 访问时间 需要访问的URL文件
# 参数其实可以自由组合,参数之间的选择并没有什么限制。
# 比如你写成http_load -parallel 5 -seconds 300 urls.txt也是可以的。我们把参数给大家简单说明一下。
# -parallel 简写-p :含义是并发的用户进程数。
# -fetches 简写-f :含义是总计的访问次数
# -rate 简写-r :含义是每秒的访问频率,最大1000
# -seconds简写-s :含义是总计的访问时间
Web压测工具之Webbench和http_load的更多相关文章
- web压测工具http_load原理分析
一.前言 http_load是一款测试web服务器性能的开源工具,从下面的网址可以下载到最新版本的http_load: http://www.acme.com/software/http_load/ ...
- web压测工具http_load
1.什么是http_loadhttp_load是一款基于Linux平台的web服务器性能测试工具,用于测试web服务器的吞吐量与负载,web页面的性能. 2.http_load的安装1)下载地址:ht ...
- 网站(Web)压测工具Webbench源码分析
一.我与webbench二三事 Webbench是一个在linux下使用的非常简单的网站压测工具.它使用fork()模拟多个客户端同时访问我们设定的URL,测试网站在压力下工作的性能.Webbench ...
- [软件测试]网站压测工具Webbench源码分析
一.我与webbench二三事 Webbench是一个在linux下使用的非常简单的网站压测工具.它使用fork()模拟多个客户端同时访问我们设定的URL,测试网站在压力下工作的性能.Webbench ...
- web服务器压测工具siege、ab
web服务器压测工具也挺多,这里只介绍我用过的这两种--siege(for linux).ab(for windows). 一.siege 1.简介: Siege是一款开源的压力测试工具,设计用于评估 ...
- http、https的压测工具——apacheab 、webbench
http的压测工具 搞清楚不同的安装方法,执行文件.配置文件的路径. yum安装: 执行文件在/usr/bin 下,一般为执行文件 配置文件在/etc目录下 conf文件 源码安装: 执行文件在安装文 ...
- SuperBenchmarker一个用.NET编写的压测工具
0x01 前言 在这之前想必大家对ab(http)与abs(https)也有一些了解,我们今天不去看ab和abs,SuperBenchmarker(sb.exe)是一个压测工具,他是一个受Apache ...
- python服务端多进程压测工具
本文描述一个python实现的多进程压测工具,这个压测工具的特点如下: 多进程 在大多数情况下,压测一般适用于IO密集型场景(如访问接口并等待返回),在这种场景下多线程多进程的区分并不明显(详情请参见 ...
- 压测工具Locuse的使用
我是听朋友提起的"蝗虫"(Locust),然而她不想用python,我就拿来试一试~ http的 各种压测工具也已经太多了,所以主要是试试locust在当前比较流行的rpc协议上的 ...
随机推荐
- django admin 添加用户出现外键约束错误
今天在做mxonline项目时,注册了用户表进admin后,想在后台添加一个用户试试,结果出现了错误,经过一番搜索发现以下两个解决方法,不过我只用了一种 报错信息: IntegrityError: ( ...
- Material Component--mdcChipSet使用
<div mdcChipSet="choice"> <div mdcChip *ngFor="let item of ywDicTypes" ...
- python基础知识练习1
1.要求:输入A.B.C获得方程的解. 分析:通过input函数接收A,B,C的值.通过公式计算出detal的值,再根据条件进行判断,输出所需要的值: def args_input(): try: A ...
- sun.reflect.generics.reflectiveObjects.TypeVariableImpl cannot be cast to java.lang.Class
1.首先,问题出现的点是在泛型 我出现问题的原因是,和泛型有关系,要调整泛型 2.我把问题出现的过程描述一哈子 1.基础类 @tk.mybatis.mapper.annotation.Register ...
- C# 爬取猫眼电影数据
最近做了一个新项目,因为项目需要大量电影数据,猫眼电影又恰好有足够的数据,就上猫眼爬数据了. 1.先分析一下网页地址,发现电影都是被排好序号了,这就很简单了. 2.在分析页面,这次主要爬取黄色框中的内 ...
- MySQL数据库的卸载与安装
MySQL数据库的卸载与安装 MySQL的完全卸载 因为不知道什么原因,电脑里同时存在两个版本的mysql,所以决定卸载重新安装,但是大家都说MySQL很难清除干净,所以特地查找完全卸载MySQL的方 ...
- 数据可视化之powerBI基础(九)Power BI中的“新表”,你会用吗?
https://zhuanlan.zhihu.com/p/64413703 通常情况下,在PowerBI进行分析的各种数据表都是从外部的各种数据源导入进来的,但并不总是如此,某些情况下在PowerBI ...
- 数据可视化之powerBI技巧(九)PowerBI按周进行业务分析的思路
按周进行数据分析,在零售业.电商等类型的公司中很常见,但是不少人觉得按周进行分析无从下手,一个主要的原因是找不到对应的函数,因为时间智能函数只对应年.季.月.天这几个粒度,没有关于周的时间智能函数. ...
- 数据可视化实例(十二): 发散型条形图 (matplotlib,pandas)
https://datawhalechina.github.io/pms50/#/chapter10/chapter10 如果您想根据单个指标查看项目的变化情况,并可视化此差异的顺序和数量,那么散型条 ...
- 08-Python面对对象进阶
一.面向对象编程三大特征 Python是面向对象的语言,同样支持面向对象的编程的三大特征:继承,封装,多态. 封装是指隐藏对象的属性和实现细节,只对外提供必要的一些方法,私有属性,私有方法是实现封装地 ...