zoukankan      html  css  js  c++  java
  • Linux压力测试工具

    1 http_load:http://www.oschina.net/p/http_load

    命令行输入man http_load 或者 http_load -h可以看到工具的使用方式:

    参数说明:

    -parallel   简写-p 含义是并发的用户进程数。
    -fetches   简写-f 含义是总计的访问次数
    -rate        简写-r 含义是每秒的访问频率
    -seconds  简写-s 含义是总计的访问时间
    urls.txt :  是需要进行压力测试的文件,文件里面记录的是需要进行测试的url地址

    使用方式说明:

    http_load -parallel 100 -fetches 10000 urls.txt

    #100个并发执行10000次

    http_load -parallel 100 -seconds 3600 urls.txt

    #100个并发执行1小时

    http_load -rate 100 -fetches 10000 urls.txt

    #每秒100个请求频率,请求10000次

    http_load -rate 100 -seconds 3600 urls.txt

    #每秒100个请求频率执行1小时

    结果分析:

    49 fetches, 2 max parallel, 289884 bytes, in 10.0148 seconds
    5916 mean bytes/connection
    4.89274 fetches/sec, 28945.5 bytes/sec
    msecs/connect: 28.8932 mean, 44.243 max, 24.488 min
    msecs/first-response: 63.5362 mean, 81.624 max, 57.803 min
    HTTP response codes:
    code 200 -- 49

    1.49 fetches, 2 max parallel, 289884 bytes, in 10.0148 seconds
    说明在上面的测试中运行了49个请求,最大的并发进程数是2,总计传输的数据是289884bytes,运行的时间是10.0148秒

    2.5916 mean bytes/connection
    说明每一连接平均传输的数据量289884/49=5916

    3.4.89274 fetches/sec, 28945.5 bytes/sec
    说明每秒的响应请求个数为4.89274,每秒传递的数据为28945.5 bytes/sec

    4.msecs/connect: 28.8932 mean, 44.243 max, 24.488 min
    说明每次连接的平均响应时间是28.8932 msecs(毫秒),最大的响应时间44.243 msecs,最小的响应时间24.488 msecs

    5.msecs/first-response: 63.5362 mean, 81.624 max, 57.803 min

    6、HTTP response codes: code 200 -- 49
    说明打开响应页面的类型,如果403的类型过多,那可能要注意是否系统遇到了瓶颈。
    特殊说明:这里,我们一般会关注到的指标是fetches/sec(每秒处理的请求数量)、msecs/connect(每次连接处理的时间)
    他们分别对应的常用性能指标参数
    Qpt-每秒响应用户数和response time,每次连接响应用户的时间。
    测试的结果主要也是看这两个值。当然仅有这两个指标并不能完成对性能的分析,我们还需要对服务器的cpu、men进行分析,才能得出结论

    错误信息:byte count wrong
    http_load在处理时会去关注每次访问同一个URL返回结果(即字节数)是否一致,若不一致就会抛出byte count wrong
    所以动态页面可以忽略这个错误信息。

    使用ps -ef | grep http_load | wc -l可以看出只有一个http_load进程,说明在执行并发的时候并没有产生相应的子进程去执行并发,始终只有一个进程

    2 webbench

    WebBench是有名的网站压力测试工具,由Lionbridge公司开发,最多可以模拟3万个并发连接去测试网站的负载能力。
    Webbech能测试处在相同硬件上,不同服务的性能以及不同硬件上同一个服务的运行状况。webBech的标准测试可以向我们展示服务器的 两项 内容:每秒钟相应请求数和每秒钟传输数据量。webbench不但能具有便准静态页面的测试能力,还能对动态页面(ASP,PHP,JAVA,CGI)进 行测试的能力。还有就是他支持对含有SSL的安全网站例如电子商务网站进行静态或动态的性能测试。

    1).下载webbench文件

    直接网上下载webbench文件或wget命令下载:

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

    2).解压要编译的文件

    tarzxvf webbench-1.5.tar.gz

    3).编译源代码和安装文件

    cd webbench-1.5
    vim Makefile (自定义安装路径,PREFIX?= /usr/local)
    make&& make install

    4).webbench-c 500 -t 30 http://www.baidu.com/index.php

    参数说明:-c表示并发数,-t表示时间(秒)

    测试结果:

    Webbench - Simple Web Benchmark 1.5
    Copyright (c) Radim Kolar 1997-2004, GPL Open Source Software.

    Benchmarking: GET http://www.baidu.com/index.php
    100 clients, running 60 sec.

    Speed=600 pages/min, 592821 bytes/sec.
    Requests: 624 susceed, 0 failed.

    每秒钟传输数据量:592821 bytes/sec每秒钟相应请求数:600/60= 10 pages/sec

    使用ps -ef | grep webbench | wc -l可以看出只有500个webbench进程,说明在执行并发的时候产生了相应的子进程去执行并发

    3 ab
    ab是apache自带的一款功能强大的测试工具,安装了apache一般就自带了,输入man ab就可以查看到具体的使用方式.

    参数众多,一般我们用到的是-n 和-c
    例如:
    ab -c 1000 -n 100 http://www.baidu.com/index.php

    这个表示同时处理1000个请求并运行100次index.php文件

    使用ps -ef | grep ab | wc -l可以看出只有1000个webbench进程,说明在执行并发的时候产生了相应的子进程去执行并发

  • 相关阅读:
    241. Different Ways to Add Parentheses java solutions
    89. Gray Code java solutions
    367. Valid Perfect Square java solutions
    46. Permutations java solutions
    116. Populating Next Right Pointers in Each Node java solutions
    153. Find Minimum in Rotated Sorted Array java solutions
    判断两颗树是否相同
    求二叉树叶子节点的个数
    求二叉树第k层的结点个数
    将二叉排序树转换成排序的双向链表
  • 原文地址:https://www.cnblogs.com/springdong/p/3617512.html
Copyright © 2011-2022 走看看