使ApacheBench支持multi-url的方法
这篇文章主要介绍了使ApacheBench支持multi-url的方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下由于标准的ab只支持对单个uri进行压测,不满足实际需要,故做以下修改,使ab支持multi-url。1、下载Apache httpd相关源码包以及针对ab工具的patch包1234wget https://mirrors.tuna.tsinghua.edu.cn/apache/apr/apr-1.6.5.tar.gzwget https://mirrors.tuna.tsinghua.edu.cn/apache/apr/apr-util-1.6.1.tar.gzwget https://mirrors.tuna.tsinghua.edu.cn/apache/httpd/httpd-2.4.37.tar.gzwget https://github.com/philipgloyne/apachebench-for-multi-url/archive/master.zip注:httpd依赖于apr和apr-util参考文案:http://www.cncsto.com/article/582、编译安装apr1234tar -zxf apr-1.6.5.tar.gzcd apr-1.6.5./configure --prefix=/usr/local/aprmake && make install3、编译安装apr-util1234tar -zxf apr-util-1.6.1.tar.gzcd apr-util-1.6.1./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/aprmake && make install4、替换httpd源码里面的ab.c文件123unzip master.ziptar -zxf httpd-2.4.37.tar.gz\cp ./apachebench-for-multi-url-master/ab.c ./httpd-2.4.37/support/5、编译安装httpd1234567891011121314151617cd 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=allmake && make install6、验证结果12345678910111213141516171819202122232425262728293031323334353637#/usr/local/apache/bin/ab -hUsage: /usr/local/apache/bin/ab [options] [http[s]://]hostname[:port]/pathOptions 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 attributesare a colon separated username and password.-P attribute Add Basic Proxy Authentication, the attributesare 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的方法的文章就介绍到这了