WebBench----简洁优美的网站压力测试工具

WebBench是一款Linux下的网站压力测试工具,能模拟3万个并发连接测试网站负载能力。本文将介绍其下载安装过程,主要工作原理以及源码分析。
摘要由CSDN通过智能技术生成

    WebBench是Linux下的一款网站压力测试工具,最多可以模拟3万个并发连接去测试网站的负载能力。

    WebBench能测试相同的服务在不同的硬件的性能和不同服务在相同硬件下的性能。


WebBench的下载安装

1.下载

命令:wget http://home.tiscali.cz/~cz210552/distfiles/webbench-1.5.tar.gz

2.解压缩

命令:tar zxvf webbench-1.5.tar.gz

3.进入webbench目录文件

命令:cd webbench

4.安装

命令1:make

命令2:make install

5.运行

webbench -c 10 -t 20 http://www.baidu.com/

WebBench的主要工作原理


WebBench中各函数的流程及功能

1.build_request()函数------生成HTTP请求
获取请求方法
添加空行
判断URL
获取代理服务器的ip和端口号
获取http版本
2.bench()函数------创建各子进程以发送http请求,并收集统计数据
检测目标服务器是否可以连接,使用connect()
创建一对管道,使用mypipe
创建指定个数的clients的子进程,使用fork()
在子进程中:调用benchcore()执行测试
      向管道写入三项数据,成功次数,失败次数,字节数
在父进程中:循环clients次,从管道读入子进程的三项数据
        汇总三项数据总和
打印统计结果
benchcore()函数------(在子进程中)反复发送http请求
设置信号,安装闹钟
循环,直到服务器超时
连接服务器,获取fd,更改失败次数
写入http请求,更改失败次数
对HTTP0.9版本做特殊处理
等服务器响应,反复从fd读入相应数据,累加,失败的话更改失败次数
关闭fd
更改成功次数

详细源码剖析

webbench.c

/*
 * (C) Radim Kolar 1997-2004
 * This is free software, see GNU Public License version 2 for
 * details.
 *
 * Simple forking 
  • 4
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值