美文网首页
网站压力测试-工具篇

网站压力测试-工具篇

作者: tianmac | 来源:发表于2017-10-17 14:32 被阅读29次

    webbench

    最多可以模拟3万个并发连接去测试网站的负载能力,个人感觉要比Apache自带的ab压力测试工具好,安装使用也特别方便。
    webbench 的安装

    wget http://home.tiscali.cz/cz210552/distfiles/webbench-1.5.tar.gz
    tar zxvf webbench-1.5.tar.gz
    cd webbench-1.5
    make && make install
    

    Ubuntu 下安装使用

    1. 安装依赖包CTAGS
    apt-get install ctags
    2. 安装 Webbench
    下载程序: [webbench-1.5.tar.gz](http://home.tiscali.cz/~cz210552/distfiles/webbench-1.5.tar.gz)
    wget http://home.tiscali.cz/~cz210552/distfiles/webbench-1.5.tar.gz make sudo make install
    

    webbench 查看命令帮助

    webbench -?
    

    webbench 使用方法

    webbench -c 500 -t 30 [http://127.0.0.1/test.php](http://127.0.0.1/test.php)
    

    webbench 的参数说明 -c 表示并发数(客户端数),-t 表示时间(秒)
    webbench 测试结果

    Webbench – Simple Web Benchmark 1.5
    Copyright (c) Radim Kolar 1997-2004, GPL Open Source Software.
    
    Benchmarking: GET http://127.0.0.1/phpionfo.php
    500 clients, running 30 sec.
    
    Speed=3230 pages/min, 11614212 bytes/sec.
    Requests: 1615 susceed, 0 failed.
    

    分析:每秒钟响应请求数:3230 pages/min,每秒钟传输数据量11614212 bytes/sec.

    ab

    Apache附带的压力测试工具ab,非常容易使用,并且完全可以摸你各种条件对Web服务器发起测试请求。ab可以直接在Web服务器本地发起测试请求,这对于需要了解服务器的处理性能至关重要,因为它不包括数据的网络传输时间以及用户PC本地的计算时间。

    要执行 1000 次的 connection, 20 次的 concurrent (并行, 同时):

    语法: ab -n 1000 -c 20 www.baidu.com, -n 请求数, -c 并发数
    

    产生出来的结果. 要注意的是以下几个:

    § Time taken for tests: 总共执行花了多久的时间.(以上 1000 次共多久)
    § Requests per second: 每秒平均可以处理多少个 connection.
    

    参数详解

    -n 测试会话中所执行的请求个数,默认仅执行一个请求
    -c 一次产生的请求个数,即同一时间发出多少个请求,默认为一次一个
    -t 测试所进行的最大秒数,默认为无时间限制....其内部隐含值是[-n 50000],它可以使对服务器的测试限制在一个固定的总时间以内
    -p 包含了需要POST的数据的文件
    -T POST数据所使用的Content-type头信息
    -v 设置显示信息的详细程度
    -w 以HTML表格的形式输出结果,默认是白色背景的两列宽度的一张表
    -i 以HTML表格的形式输出结果,默认是白色背景的两列宽度的一张表
    -x 设置<table>属性的字符串,此属性被填入<table 这里>
    -y 设置<tr>属性的字符串
    -z 设置<td>属性的字符串
    -C 对请求附加一个Cookie行,其典型形式是name=value的参数对,此参数可以重复
    -H 对请求附加额外的头信息,此参数的典型形式是一个有效的头信息行,其中包含了以冒号分隔的字段和值的对(如"Accept-Encoding: zip/zop;8bit")
    -A HTTP验证,用冒号:分隔传递用户名及密码
    -P 无论服务器是否需要(即是否发送了401认证需求代码),此字符串都会被发送
    -X 对请求使用代理服务器
    -V 显示版本号并退出
    -k 启用HTTP KeepAlive功能,即在一个HTTP会话中执行多个请求,默认为不启用KeepAlive功能
    -d 不显示"percentage served within XX [ms] table"的消息(为以前的版本提供支持)
    -S 不显示中值和标准背离值,且均值和中值为标准背离值的1到2倍时,也不显示警告或出错信息,默认会显示最小值/均值/最大值等(为以前的版本提供支持)
    -g 把所有测试结果写入一个'gnuplot'或者TSV(以Tab分隔的)文件
    -e 产生一个以逗号分隔的(CSV)文件,其中包含了处理每个相应百分比的请求所需要(从1%到100%)的相应百分比的(以微妙为单位)时间
    -h 显示使用方法
    -k 发送keep-alive指令到服务器端
    

    相关文章

      网友评论

          本文标题:网站压力测试-工具篇

          本文链接:https://www.haomeiwen.com/subject/zkunlxtx.html