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的更多相关文章

  1. web压测工具http_load原理分析

    一.前言 http_load是一款测试web服务器性能的开源工具,从下面的网址可以下载到最新版本的http_load: http://www.acme.com/software/http_load/ ...

  2. web压测工具http_load

    1.什么是http_loadhttp_load是一款基于Linux平台的web服务器性能测试工具,用于测试web服务器的吞吐量与负载,web页面的性能. 2.http_load的安装1)下载地址:ht ...

  3. 网站(Web)压测工具Webbench源码分析

    一.我与webbench二三事 Webbench是一个在linux下使用的非常简单的网站压测工具.它使用fork()模拟多个客户端同时访问我们设定的URL,测试网站在压力下工作的性能.Webbench ...

  4. [软件测试]网站压测工具Webbench源码分析

    一.我与webbench二三事 Webbench是一个在linux下使用的非常简单的网站压测工具.它使用fork()模拟多个客户端同时访问我们设定的URL,测试网站在压力下工作的性能.Webbench ...

  5. web服务器压测工具siege、ab

    web服务器压测工具也挺多,这里只介绍我用过的这两种--siege(for linux).ab(for windows). 一.siege 1.简介: Siege是一款开源的压力测试工具,设计用于评估 ...

  6. http、https的压测工具——apacheab 、webbench

    http的压测工具 搞清楚不同的安装方法,执行文件.配置文件的路径. yum安装: 执行文件在/usr/bin 下,一般为执行文件 配置文件在/etc目录下 conf文件 源码安装: 执行文件在安装文 ...

  7. SuperBenchmarker一个用.NET编写的压测工具

    0x01 前言 在这之前想必大家对ab(http)与abs(https)也有一些了解,我们今天不去看ab和abs,SuperBenchmarker(sb.exe)是一个压测工具,他是一个受Apache ...

  8. python服务端多进程压测工具

    本文描述一个python实现的多进程压测工具,这个压测工具的特点如下: 多进程 在大多数情况下,压测一般适用于IO密集型场景(如访问接口并等待返回),在这种场景下多线程多进程的区分并不明显(详情请参见 ...

  9. 压测工具Locuse的使用

    我是听朋友提起的"蝗虫"(Locust),然而她不想用python,我就拿来试一试~ http的 各种压测工具也已经太多了,所以主要是试试locust在当前比较流行的rpc协议上的 ...

随机推荐

  1. 让对象拥有状态——C#中的状态模式

    大家好,老胡又在博客和大家见面了,在聊今天的主角之前,老胡先给大家讲一个以前发生的故事.   真实的故事 当老胡还是小胡的时候,跟随团队一起开发一款游戏.这款游戏是一款末日生存类游戏,玩家可以 收集资 ...

  2. docker 容器中 apt-get install 软件时,提示无法定位软件包

    [解决] 执行 apt-get update 然后再进行安装,即可. (完)

  3. 一行一行源码分析清楚AbstractQueuedSynchronizer

    ​“365篇原创计划”第二十四篇. 今天呢!灯塔君跟大家讲: 一行一行源码分析清楚AbstractQueuedSynchronizer 在分析 Java 并发包 java.util.concurren ...

  4. JS数据类型判断的几种方法

    JS数据类型判断 JavaScript 中常见数据类型有Number.String.Boolean.Object.Array.Json.Function.Date.RegExp.Error.undef ...

  5. 「MoreThanJava」Day 3:构建程序逻辑的方法

    「MoreThanJava」 宣扬的是 「学习,不止 CODE」,本系列 Java 基础教程是自己在结合各方面的知识之后,对 Java 基础的一个总回顾,旨在 「帮助新朋友快速高质量的学习」. 当然 ...

  6. 最小的K个数(剑指offer-29)

    题目描述 输入n个整数,找出其中最小的K个数.例如输入4,5,1,6,2,7,3,8这8个数字,则最小的4个数字是1,2,3,4. 题目解析 大小为 K 的最小堆 复杂度:O(NlogK) + O(K ...

  7. day16 三层装饰器和迭代器

    一. 经典的两层装饰器,也是标准装饰器 案例 import time def outter1(func): def wrapper(*args, **kwargs): start = time.tim ...

  8. LintCode笔记 - 82.落单的数

    这一题相对简单,但是代码质量可能不是很好,我分享一下我的做题笔记以及做题过程给各位欣赏,有什么不足望各位大佬指出来 原题目,各位小伙伴也可以试着做一下 . 落单的数 中文English 给出 * n ...

  9. 为什么通常在发送数据埋点请求的时候使用的是 1x1 像素的透明 gif 图片?

    避免跨域(img 天然支持跨域) 利用空白gif或1x1 px的img是互联网广告或网站监测方面常用的手段,简单.安全.相比PNG/JPG体积小,1px 透明图,对网页内容的影响几乎没有影响,这种请求 ...

  10. 【Linux】Linux常用命令及操作 (一)

    一.Linux简介 二.Linux基础命令 三.工作常用命令 --------------------------------------------------------------------- ...