高并发压力测试

为什么要压力测试

1)帮助我们了解服务器的性能以及并发

    2)帮助我们查找程序问题

    3)帮助我们了解网站的并发量

    4)了解业务系统的瓶颈

    5)了解服务器硬件的瓶颈

使用apache的ab.exe进行压力测试

-n

即requests,用于指定压力测试总共的执行次数。

-c

即concurrency,用于指定压力测试的并发数。

使用ab进行压力测试

我们对位于本地Apache服务器上、URL为localhost/index.php的页面进行压力测试。测试总次数为1000,并发数为100(相当于100个用户同时访问,他们总共访问1000次)。我们输入DOS命令ab -n 1000 -c 100 localhost/index.php,打印结果如下:

使用PYLOT进行压力测试
一、pylot是什么?

  一个基于python的简单易用,跨平台的开源网站压力测试工具,可以从命令行运行也可以开启图形界面运行,可以设置cookie,可以将测试结果制作成图表方便查看。


二、使用pylot进行压力测试

1、安装python

https://blog.csdn.net/weixin_41782053/article/details/80670656

2、使用pylot

   1、下载完pylot之后,解压到一个目录下,例如:C:pylot_1.26,无需安装。

      2、配置testcases.xml

      在pylot_1.26文件夹里,会看到一个testcases.xml的文件,我们需要更改一下这个文件,用记事本打开它,把需要测试的网页地址添加进去。

<testcases>
    <!-- SAMPLE TEST CASE -->
    <case>
        <url>http://www.example.com/</url>
    </case>
    
    <!-- SAMPLE TEST CASE -->
    <!--
    <case>
        <url>http://search.yahooapis.com/WebSearchService/V1/webSearch</url>
        <method>POST</method>
        <body><![CDATA[appid=YahooDemo&query=pylot]]></body>
        <add_header>Content-type: application/x-www-form-urlencoded</add_header>
    </case>
    -->
</testcases>

上面代码中,把“http://www.example.com/”改为你要测试的网址,然后保存文件。

      3、压力测试

      打开dos窗口(点击“开始”-“运行”,输入cmd,点击“确定”),进入pylot的目录,

      输入如下命令:

                    python run.py -a 100 -d 20

       解释:-a 表示并发100个客户端连接,-d 表示持续运行时间为20秒

      这时,会看到python的运行界面(我这里演示并发20,运行时间10秒),

python pylot压力测试

      看到类似以上信息,就表示测试结束了。(如果一直没有出现上图的信息,那可能是并发数太多了,把并发数改少点试试,例如只并发20,不要一下子就并发1000)

      测试结束后,会在pylot的文件目录里生成一个“results”的文件夹,还生成一个results.html的文件,这个文件记录了详细的测试数据。我们可以进入results的目录,打开这个文件,看看我的测试结果:

---------------------
作者:一曲微茫度此生
来源:CSDN
原文:https://blog.csdn.net/weixin_41782053/article/details/80665746
版权声明:本文为博主原创文章,转载请附上博文链接!

原文地址:https://www.cnblogs.com/zhangqing979797/p/10533437.html