时间:2021-01-06来源:www.pcxitongcheng.com作者:电脑系统城
由于标准的ab只支持对单个uri进行压测,不满足实际需要,故做以下修改,使ab支持multi-url。
1、下载Apache httpd相关源码包以及针对ab工具的patch包
1 2 3 4 |
wget https: //mirrors .tuna.tsinghua.edu.cn /apache/apr/apr-1 .6.5. tar .gz wget https: //mirrors .tuna.tsinghua.edu.cn /apache/apr/apr-util-1 .6.1. tar .gz wget https: //mirrors .tuna.tsinghua.edu.cn /apache/httpd/httpd-2 .4.37. tar .gz wget https: //github .com /philipgloyne/apachebench-for-multi-url/archive/master .zip |
注:httpd依赖于apr和apr-util
2、编译安装apr
1 2 3 4 |
tar -zxf apr-1.6.5. tar .gz cd apr-1.6.5 . /configure --prefix= /usr/local/apr make && make install |
3、编译安装apr-util
1 2 3 4 |
tar -zxf apr-util-1.6.1. tar .gz cd apr-util-1.6.1 . /configure --prefix= /usr/local/apr-util --with-apr= /usr/local/apr make && make install |
4、替换httpd源码里面的ab.c文件
1 2 3 |
unzip master.zip tar -zxf httpd-2.4.37. tar .gz \ cp . /apachebench-for-multi-url-master/ab .c . /httpd-2 .4.37 /support/ |
5、编译安装httpd
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
cd httpd-2.4.37 . /configure \ --with-apr= /usr/local/apr \ --with-apr-util= /usr/local/apr-util \ --prefix= /usr/local/apache \ --sysconfdir= /etc/httpd24 \ -- enable -so \ -- enable -ssl \ -- enable -cgi \ -- enable -rewrite \ --with-zlib \ --with-pcre \ --with-mpm=prefork \ -- enable -modules=most \ -- enable -mpms-shared=all make && make install |
6、验证结果
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 |
#/usr/local/apache/bin/ab -h Usage: /usr/local/apache/bin/ab [options] [http[s]: // ] hostname [:port] /path Options are: -n requests Number of requests to perform -c concurrency Number of multiple requests to make -t timelimit Seconds to max. wait for responses -b windowsize Size of TCP send /receive buffer, in bytes -p postfile File containing data to POST. Remember also to set -T -u putfile File containing data to PUT. Remember also to set -T -T content- type Content- type header for POSTing, eg. 'application/x-www-form-urlencoded' Default is 'text/plain' - v verbosity How much troubleshooting info to print -w Print out results in HTML tables -i Use HEAD instead of GET -x attributes String to insert as table attributes -y attributes String to insert as tr attributes -z attributes String to insert as td or th attributes -C attribute Add cookie, eg. 'Apache=1234. (repeatable) -H attribute Add Arbitrary header line, eg. 'Accept-Encoding: gzip' Inserted after all normal header lines. (repeatable) -A attribute Add Basic WWW Authentication, the attributes are a colon separated username and password. -P attribute Add Basic Proxy Authentication, the attributes are a colon separated username and password. -X proxy:port Proxyserver and port number to use -V Print version number and exit -k Use HTTP KeepAlive feature -d Do not show percentiles served table. -S Do not show confidence estimators and warnings. -g filename Output collected data to gnuplot format file . -e filename Output CSV file with percentages served -r Don't exit on socket receive errors. -h Display usage information (this message) -L Use URL list file name, eg. url.txt -Z ciphersuite Specify SSL /TLS cipher suite (See openssl ciphers) -f protocol Specify SSL /TLS protocol (SSL2, SSL3, TLS1, or ALL) |
可以看到ab已经支持-L参数(上面帮助信息的倒数第3行),大功告成。
到此这篇关于使ApacheBench支持multi-url的方法的文章就介绍到这了,更多相关ApacheBench支持multi-url内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
2023-03-17
Nginx主机域名配置实现2023-03-17
Nginx配置-日志格式配置方式2023-03-17
Apache APISIX Dashboard 未授权访问漏洞分析(CVE-2021-45232)正常项目无法访问(Linux 服务器),启动tomcat时卡在下图位置,项目无法启动。1、先检查tomcat日志、项目日志没有报错信息,且没再产生新的日志信息。2、jdk、tomcat 、 jvm 配置,服...
2023-03-15
这篇文章主要介绍了Kubernetes中Nginx服务启动失败排查流程(Error: ImagePullBackOff),本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以...
2023-03-15