siege

压力测试总结

江枫思渺然 提交于 2020-01-01 09:00:14
(1) 保证测试机与被测机在同一网段。如果在不同网段,可能会存在网络瓶颈,导致压力测试达不到指定的并发量。 (2) 压力测试时,要同时观察测试机(压测工具 siege 或 ab 所在的机器)和被测机的负载情况( CPU ,内存,网络带宽等)。如果有数据库或缓存,还要观察数据库服务器和缓存服务器的负载情况。 (3) 压力测试时,测试机的负载不能过高,以免影响测试工具发出的请求数量和并发度。被测机的负载要达到一定程度, CPU ,内存,网络带宽至少要有一项接近满负荷状态。(例如, CPU 使用率达到 50% 以上,甚至接近 100% )。 (4) 对于 mysql 数据库,可以在命令行下使用 show processlist 命令查看同一时间的连接数,以及是否存在锁定现象。 (5) 对于 siege ,在设置 -b 选项,并且未设置 -v 选项的情况下,并发度设置为 100 左右即可(测试组给的经验值)。 (6) 为了减少不确定因素对结果的影响,每次压力测试都要达到一定的数量,并持续一定的时间,例如,持续压测 20-30 分钟。 (7) 压力测试不能只关注 QPS ,还要注意查看其它指标。 (8) 为了排除个别因素对性能的影响,可以适当地修改一些设置信息,通过对比修过前后的测试结果,分析评估单一因素对性能的影响。 (9) xdebug(xhprof) 会影响性能,压力测试时要去掉

Ubuntu Siege 压力测试工具

别等时光非礼了梦想. 提交于 2019-12-26 19:11:52
【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>> 安装 $ sudo apt install siege Siege命令常用参数 -c 200 指定并发数200 -r 5 指定测试的次数5 -f urls.txt 制定url的文件 -i internet系统,随机发送url -b 请求无需等待 delay=0 -t 5 持续测试5分钟 # -r和-t一般不同时使用 常用的几个子 # 模拟10秒内每秒访问20次 $ sudo siege http://web.meilapp.com/products -c20 -t10s # 200个并发对http://www.google.com发送请求100次 $ siege -c 200 -r 100 http://www.google.com # 在urls.txt中列出所有的网址 $ siege -c 200 -r 100 -f urls.txt # 随机选取urls.txt中列出所有的网址 $ siege -c 200 -r 100 -f urls.txt -i # delay=0,更准确的压力测试,而不是功能测试 $ siege -c 200 -r 100 -f urls.txt -i -b # 指定http请求头 文档类型 siege -H "Content-Type:application/json" -c

mac siege测压

瘦欲@ 提交于 2019-12-26 19:11:38
【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>> mac下有很多的测压工具,不过我个人比较倾向于小巧的siege,在mac上,安装和使用都是很方便的。需要注意的是,必须保证open file足够大,不然会报too many file open错误。 查看和修改open file值 使用 ulimit -n 10000 可以修改该值。不过这种修改并不是永久的,关闭终端会话,又会恢复回来。 安装 mac 安装siege很简单, brew install siege 即可。 使用 siege -h 查看siege的使用帮助 常用使用方式为 siege -c 1000 -t 5s URL siege -c 1000 -t 5s -f URL_File_Name 第一种是对指定站点进行压测,第二种是对文件中包含的若干URL进行批量测试。 -c 并发数 -t 压力测试时间,可以在时间后加单位,秒(10S),分钟(10M),小时(10H) -r 重复次数,与-t表达方式不同,但含义相同,不能与-t同时存在 -f 包含URL的文本名字 -b BENCHMARK模式,请求之间无需延迟 全部参数详解 -C,或–config 在屏幕上打印显示出当前的配置,配置是包括在他的配置文件$HOME/.siegerc中,可以编辑里面的参数,这样每次siege 都会按照它运行. -v

Centos Siege测试使用

南笙酒味 提交于 2019-12-26 18:50:34
【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>> 一、简介 一款开源的压力测试工具,可以根据配置对一个WEB站点进行多用户的并发访问,记录每个用户所有请求过 程的相应时间,并在一定数量的并发访问下重复进行。 二、下载 siege需要自己从 http://www.joedog.org/ 上自己下载 三、编译安装 [root@localhost software]# cd siege-2.69 [root@localhost software]# ./configure --prefix=/usr/local/siege --mandir=/usr/local/man [root@localhost siege-2.69]# make && make install #编译安装 注意:安装是会提示一下错误, /usr/bin/install: 无法创建普通文件"/usr/local/siege/etc/siegerc": 没有那个文件或目录 make[3]: *** [install-exec-hook] 错误 1 make[3]: Leaving directory `/root/siege-2.72/doc' make[2]: *** [install-exec-am] 错误 2 make[2]: Leaving directory `/root/siege

使用sproxy录制siege压力测试URL

天大地大妈咪最大 提交于 2019-12-26 18:40:59
【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>> 本文只介紹sproxy的安裝過程,至於sproxy和siege的具體用法,請參考網絡上相關資料。 siege是一款压力测试工具,我們在一个文本文件写上要测试的URL,siege会访问这些路径模拟客户端浏览器进行测试。 但有个问题,我们知道一个web地址还引用很多js,css,img,但siege不會訪問這些引用的資源。而sproxy就可以录制这些文件,原理是sproxy启动一个http代理。浏览器把代理服务器指定为sproxy监听的地址。这样浏览器请求的所有资源都会被sproxy记录下来。 下面记录安装时出现的问题以及解决方法,以CentOS为例 下载地址: http://www.joedog.org/pub/sproxy/ ./configure一切正常 make 报错: Can't locate ExtUtils/MakeMaker.pm in @INC (@INC contains: /usr/local/lib64/perl5 /usr/local/share/perl5 /usr/lib64/perl5/vendor_perl /usr/share/perl5/vendor_perl /usr/lib64/perl5 /usr/share/perl5 .) at Makefile.PL line 9.

How to install Siege with libssl?

不想你离开。 提交于 2019-12-10 14:23:10
问题 I am trying to install Siege with libssl on Mac OS 10.12, but when I use the utility against an https url I am receiving the following error. [error] HTTPS requires libssl: Unable to reach https://example.com/ with this protocol: Socket is already connected I am installing with the following commands from this wiki: ./configure --with-ssl make make install 回答1: use brew to install siege. it fixed the issue for me. the only extra thing i had to do was to link siege. https://coderwall.com/p

Load Testing and Benchmarking With siege vs wrk

吃可爱长大的小学妹 提交于 2019-12-04 07:40:01
问题 I have been looking around for tools that can help me to do load testing and benchmarking. I found couples like: https://github.com/wg/wrk , http://www.joedog.org/siege-home/ , https://github.com/rakyll/boom . I'm wondering if anyone has any experience with these tools and have any feedback pros vs cons of these tools. My load stress will include different test cases using DELETE, PUT, GET, POST... headers Thanks 回答1: I've used wrk and siege, siege is a really easy to use tool, but I'm not

Siege aborted due to excessive socket failure

匿名 (未验证) 提交于 2019-12-03 02:51:02
可以将文章内容翻译成中文,广告屏蔽插件可能会导致该功能失效(如失效,请关闭广告屏蔽插件后再试): 问题: I have encountered this problem whilst trying to run off the following cmd from siege on Mac OS X 10.8.3. siege -d1 -c 20 -t2m -i -f -r10 urls.txt The output from Siege is the following: ** SIEGE 2.74 ** Preparing 20 concurrent users for battle. The server is now under siege... done. siege aborted due to excessive socket failure; you can change the failure threshold in $HOME/.siegerc Transactions: 0 hits Availability: 0.00 % Elapsed time: 27.04 secs Data transferred: 0.00 MB Response time: 0.00 secs Transaction rate: 0.00 trans/sec

并发压力性能测试工具介绍

匿名 (未验证) 提交于 2019-12-02 23:47:01
linux安装 yum -y install httpd-tools windos 安装 // 下载Apache软件(ab软件不单独更新,而是独立集成到Apache) download https://de.apachehaus.com/downloads/httpd-2.4.39-o102s-x64-vc14.zip // 打开压缩包 unzip httpd-2.4.39-o102s-x64-vc14.zip // 将bin目录里面的ab.exe或者abs.exe复制出来放到系统环境变量路径下 常用案例 abs -c 200 -n 1000 http://www.baidu.com/index.html ab -c 200 -n 1000 http://www.baidu.com/index.html 参数内容 -n 即requests,用于指定压力测试总共的执行次数。 -c 即concurrency,用于指定的并发数。 -t 即timelimit,等待响应的最大时间(单位:秒)。 -b 即windowsize,TCP发送/接收的缓冲大小(单位:字节)。 -p 即postfile,发送POST请求时需要上传的文件,此外还必须设置-T参数。 -u 即putfile,发送PUT请求时需要上传的文件,此外还必须设置-T参数。 -T 即content-type,用于设置Content

Load Testing and Benchmarking With siege vs wrk

∥☆過路亽.° 提交于 2019-12-02 15:18:12
I have been looking around for tools that can help me to do load testing and benchmarking. I found couples like: https://github.com/wg/wrk , http://www.joedog.org/siege-home/ , https://github.com/rakyll/boom . I'm wondering if anyone has any experience with these tools and have any feedback pros vs cons of these tools. My load stress will include different test cases using DELETE, PUT, GET, POST... headers Thanks I've used wrk and siege, siege is a really easy to use tool, but I'm not sure if you can test DELETE or PUT with siege. Wrk can use provided lua script to generate requests, so DELETE