<?xml version="1.0" encoding="UTF-8"?><rss
version="2.0"
xmlns:content="http://purl.org/rss/1.0/modules/content/"
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:atom="http://www.w3.org/2005/Atom"
xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
> <channel><title>Comments on: Howto: Performance Benchmarks a Webserver</title> <atom:link href="http://www.cyberciti.biz/tips/howto-performance-benchmarks-a-web-server.html/feed" rel="self" type="application/rss+xml" /><link>http://www.cyberciti.biz/tips/howto-performance-benchmarks-a-web-server.html</link> <description>This is a Linux sys admin journal by Vivek about sys admin work, Linux tips &#38; tricks, hacks, news and more.</description> <lastBuildDate>Fri, 10 Feb 2012 20:37:43 +0000</lastBuildDate> <sy:updatePeriod>hourly</sy:updatePeriod> <sy:updateFrequency>1</sy:updateFrequency> <generator>http://wordpress.org/?v=3.3.1</generator> <item><title>By: John S.S.</title><link>http://www.cyberciti.biz/tips/howto-performance-benchmarks-a-web-server.html#comment-173262</link> <dc:creator>John S.S.</dc:creator> <pubDate>Sat, 13 Aug 2011 22:11:21 +0000</pubDate> <guid
isPermaLink="false">http://www.cyberciti.biz/tips/howto-performance-benchmarks-a-web-server.html#comment-173262</guid> <description>Thank you for taking the time to post this procedure.</description> <content:encoded><![CDATA[<p>Thank you for taking the time to post this procedure.</p> ]]></content:encoded> </item> <item><title>By: Aryashree Pritikrishna</title><link>http://www.cyberciti.biz/tips/howto-performance-benchmarks-a-web-server.html#comment-172488</link> <dc:creator>Aryashree Pritikrishna</dc:creator> <pubDate>Fri, 15 Jul 2011 11:30:39 +0000</pubDate> <guid
isPermaLink="false">http://www.cyberciti.biz/tips/howto-performance-benchmarks-a-web-server.html#comment-172488</guid> <description>Thanks for suggestion.</description> <content:encoded><![CDATA[<p>Thanks for suggestion.</p> ]]></content:encoded> </item> <item><title>By: NavaTux</title><link>http://www.cyberciti.biz/tips/howto-performance-benchmarks-a-web-server.html#comment-154883</link> <dc:creator>NavaTux</dc:creator> <pubDate>Thu, 08 Apr 2010 17:49:59 +0000</pubDate> <guid
isPermaLink="false">http://www.cyberciti.biz/tips/howto-performance-benchmarks-a-web-server.html#comment-154883</guid> <description>very nice;-)keep moving ;-)thanks;-)
one humble request Have you known how to use tsung for erlang server ? please forward to navaneethanit@gmail.com</description> <content:encoded><![CDATA[<p>very nice;-)keep moving ;-)thanks;-)<br
/> one humble request Have you known how to use tsung for erlang server ? please forward to <a
href="mailto:navaneethanit@gmail.com">navaneethanit@gmail.com</a></p> ]]></content:encoded> </item> <item><title>By: Bala</title><link>http://www.cyberciti.biz/tips/howto-performance-benchmarks-a-web-server.html#comment-154144</link> <dc:creator>Bala</dc:creator> <pubDate>Sun, 07 Mar 2010 02:51:55 +0000</pubDate> <guid
isPermaLink="false">http://www.cyberciti.biz/tips/howto-performance-benchmarks-a-web-server.html#comment-154144</guid> <description>This tutorial is very useful. Thanks for writing this</description> <content:encoded><![CDATA[<p>This tutorial is very useful. Thanks for writing this</p> ]]></content:encoded> </item> <item><title>By: Mahmud Ahsan</title><link>http://www.cyberciti.biz/tips/howto-performance-benchmarks-a-web-server.html#comment-152682</link> <dc:creator>Mahmud Ahsan</dc:creator> <pubDate>Sat, 02 Jan 2010 14:58:44 +0000</pubDate> <guid
isPermaLink="false">http://www.cyberciti.biz/tips/howto-performance-benchmarks-a-web-server.html#comment-152682</guid> <description>Really very helpful. Thanks</description> <content:encoded><![CDATA[<p>Really very helpful. Thanks</p> ]]></content:encoded> </item> <item><title>By: Ittech</title><link>http://www.cyberciti.biz/tips/howto-performance-benchmarks-a-web-server.html#comment-152364</link> <dc:creator>Ittech</dc:creator> <pubDate>Sat, 19 Dec 2009 02:45:40 +0000</pubDate> <guid
isPermaLink="false">http://www.cyberciti.biz/tips/howto-performance-benchmarks-a-web-server.html#comment-152364</guid> <description>Hello,
Thanks for your tutorial.
Is this also available on Apache on Windows? How do I run the test? Where should I enter the command to run the test?
Thanks a lot for answering ;)</description> <content:encoded><![CDATA[<p>Hello,</p><p>Thanks for your tutorial.<br
/> Is this also available on Apache on Windows? How do I run the test? Where should I enter the command to run the test?</p><p>Thanks a lot for answering ;)</p> ]]></content:encoded> </item> <item><title>By: Ian</title><link>http://www.cyberciti.biz/tips/howto-performance-benchmarks-a-web-server.html#comment-152354</link> <dc:creator>Ian</dc:creator> <pubDate>Fri, 18 Dec 2009 16:12:02 +0000</pubDate> <guid
isPermaLink="false">http://www.cyberciti.biz/tips/howto-performance-benchmarks-a-web-server.html#comment-152354</guid> <description>Jek,
looks like your testing your home network buddy (http://192.168.1.70/test.php) try your IP address that the outside world will see</description> <content:encoded><![CDATA[<p>Jek,<br
/> looks like your testing your home network buddy (<a
href="http://192.168.1.70/test.php" rel="nofollow">http://192.168.1.70/test.php</a>) try your IP address that the outside world will see</p> ]]></content:encoded> </item> <item><title>By: andreas</title><link>http://www.cyberciti.biz/tips/howto-performance-benchmarks-a-web-server.html#comment-151665</link> <dc:creator>andreas</dc:creator> <pubDate>Fri, 13 Nov 2009 15:19:21 +0000</pubDate> <guid
isPermaLink="false">http://www.cyberciti.biz/tips/howto-performance-benchmarks-a-web-server.html#comment-151665</guid> <description>thanks for the tips</description> <content:encoded><![CDATA[<p>thanks for the tips</p> ]]></content:encoded> </item> <item><title>By: Jek</title><link>http://www.cyberciti.biz/tips/howto-performance-benchmarks-a-web-server.html#comment-151074</link> <dc:creator>Jek</dc:creator> <pubDate>Fri, 16 Oct 2009 00:51:09 +0000</pubDate> <guid
isPermaLink="false">http://www.cyberciti.biz/tips/howto-performance-benchmarks-a-web-server.html#comment-151074</guid> <description>Your server is really slow...
My results on my server:
Here is the PHP page it uses:
&lt;?php
$algos = hash_algos();
foreach ($algos as $hash) {
echo $hash.&quot;: &quot;.hash($hash, $_GET[&#039;s&#039;]).&quot;&quot;;
}
?&gt;
The command I used:
ab -g gnuplot.gp -n 1000 -c 10 -q http://192.168.1.70/test.php
Here is AB&#039;s results:
Benchmarking 192.168.1.70 (be patient).....done
Server Software:        Apache/2.2.9
Server Hostname:        192.168.1.70
Server Port:            80
Document Path:          /test.php
Document Length:        3109 bytes
Concurrency Level:      10
Time taken for tests:   2.788 seconds
Complete requests:      1000
Failed requests:        0
Write errors:           0
Total transferred:      3444000 bytes
HTML transferred:       3109000 bytes
Requests per second:    358.74 [#/sec] (mean)
Time per request:       27.875 [ms] (mean)
Time per request:       2.788 [ms] (mean, across all concurrent requests)
Transfer rate:          1206.55 [Kbytes/sec] received
Connection Times (ms)
min  mean[+/-sd] median   max
Connect:        2   13   4.1     12      41
Processing:     5   15   4.5     14      43
Waiting:        5   14   4.4     13      43
Total:         13   28   5.6     26      59
Percentage of the requests served within a certain time (ms)
50%     26
66%     28
75%     29
80%     30
90%     33
95%     38
98%     48
99%     52
100%     59 (longest request)</description> <content:encoded><![CDATA[<p>Your server is really slow&#8230;</p><p>My results on my server:</p><p>Here is the PHP page it uses:</p><p>&lt;?php<br
/> $algos = hash_algos();<br
/> foreach ($algos as $hash) {<br
/> echo $hash.&quot;: &#8220;.hash($hash, $_GET['s']).&#8221;";<br
/> }<br
/> ?&gt;</p><p>The command I used:<br
/> ab -g gnuplot.gp -n 1000 -c 10 -q <a
href="http://192.168.1.70/test.php" rel="nofollow">http://192.168.1.70/test.php</a></p><p>Here is AB&#8217;s results:</p><p>Benchmarking 192.168.1.70 (be patient)&#8230;..done</p><p>Server Software:        Apache/2.2.9<br
/> Server Hostname:        192.168.1.70<br
/> Server Port:            80</p><p>Document Path:          /test.php<br
/> Document Length:        3109 bytes</p><p>Concurrency Level:      10<br
/> Time taken for tests:   2.788 seconds<br
/> Complete requests:      1000<br
/> Failed requests:        0<br
/> Write errors:           0<br
/> Total transferred:      3444000 bytes<br
/> HTML transferred:       3109000 bytes<br
/> Requests per second:    358.74 [#/sec] (mean)<br
/> Time per request:       27.875 [ms] (mean)<br
/> Time per request:       2.788 [ms] (mean, across all concurrent requests)<br
/> Transfer rate:          1206.55 [Kbytes/sec] received</p><p>Connection Times (ms)<br
/> min  mean[+/-sd] median   max<br
/> Connect:        2   13   4.1     12      41<br
/> Processing:     5   15   4.5     14      43<br
/> Waiting:        5   14   4.4     13      43<br
/> Total:         13   28   5.6     26      59</p><p>Percentage of the requests served within a certain time (ms)<br
/> 50%     26<br
/> 66%     28<br
/> 75%     29<br
/> 80%     30<br
/> 90%     33<br
/> 95%     38<br
/> 98%     48<br
/> 99%     52<br
/> 100%     59 (longest request)</p> ]]></content:encoded> </item> <item><title>By: Trilitheus</title><link>http://www.cyberciti.biz/tips/howto-performance-benchmarks-a-web-server.html#comment-150552</link> <dc:creator>Trilitheus</dc:creator> <pubDate>Mon, 07 Sep 2009 14:08:02 +0000</pubDate> <guid
isPermaLink="false">http://www.cyberciti.biz/tips/howto-performance-benchmarks-a-web-server.html#comment-150552</guid> <description>I&#039;ve changed this slightly - I think the ::ffff: is something to do with IPV6 - with from remote host or localhost - I may be wrong - anyhoo....
I changed the netstat line to this:
netstat -ntu &#124; awk &#039;{print $5}&#039; &#124; sed &#039;s/^::ffff://&#039; &#124; cut -f1 -d: &#124; sort &#124; uniq -c &#124; sort -nr
note the extra sed &#039;s/^::ffff//&#039; which converts the lines with the funny bits in to the same as the others.  This was the simplest and fastest way I could think off to strip it out so the rest of the code works as expected.
Hope this helps anyone who was getting a headache with this.</description> <content:encoded><![CDATA[<p>I&#8217;ve changed this slightly &#8211; I think the ::ffff: is something to do with IPV6 &#8211; with from remote host or localhost &#8211; I may be wrong &#8211; anyhoo&#8230;.</p><p>I changed the netstat line to this:<br
/> netstat -ntu | awk &#8216;{print $5}&#8217; | sed &#8216;s/^::ffff://&#8217; | cut -f1 -d: | sort | uniq -c | sort -nr</p><p>note the extra sed &#8216;s/^::ffff//&#8217; which converts the lines with the funny bits in to the same as the others.  This was the simplest and fastest way I could think off to strip it out so the rest of the code works as expected.<br
/> Hope this helps anyone who was getting a headache with this.</p> ]]></content:encoded> </item> <item><title>By: Pierre</title><link>http://www.cyberciti.biz/tips/howto-performance-benchmarks-a-web-server.html#comment-150430</link> <dc:creator>Pierre</dc:creator> <pubDate>Mon, 31 Aug 2009 07:47:33 +0000</pubDate> <guid
isPermaLink="false">http://www.cyberciti.biz/tips/howto-performance-benchmarks-a-web-server.html#comment-150430</guid> <description>Here is a way to let ab produce a CSV file that covers a &lt;b&gt;range of concurrencies (like 0-1,000)&lt;/b&gt;, saving you the hurdle of running ab 1,000 times (and merging results).
It has been used to benchmark Apache, IIS 5.1 and 7.0, Nginx, Cherokee, Rock and TrustLeap G-WAN, see:
http://trustleap.ch/
You just have then to import the CSV file into Open Office to generate Charts!
&lt;code&gt;
#include
#include
#include
#include
#include
#include
#include
#define LOOP 1000
#define ITER   1
// ----------------------------------------------------------------------------
int main(int argc, char *argv[])
{
int   i, j, nbr, best;
char  str[256], buff[4000];
FILE *f, *fo=fopen(&quot;test.txt&quot;, &quot;wb&quot;);
for(i=0; i res.txt&quot;, i?i:1);
for(best=0, j=0; j&lt;ITER; j++)
{
system(str);
Sleep (40);
// get the information we need from res.txt
if(!(f=fopen(&quot;res.txt&quot;, &quot;rb&quot;)))
{
printf(&quot;Can&#039;t open file\n&quot;);
return 1;
}
memset(buff, 0, sizeof(buff)-1);
fread (buff, 1, sizeof(buff)-1, f);
fclose(f);
nbr=0;
if(*buff)
{
char *p=(char*)strstr(buff, &quot;Requests per second:&quot;);
if(p) // &quot;Requests per second:    14,863.00 [#/sec] (mean)&quot;
{
while(*p==&#039; &#039;) p++;
nbr=atoi(p);
}
}
if(best&lt;nbr) best=nbr;
}
// save data
printf(&quot;%u,%u\n&quot;, i, best);
fprintf(fo, &quot;%u,%u\n&quot;, i, best);
}
fclose(fo);
return 0;
}
// ----------------------------------------------------------------------------
&lt;/code&gt;</description> <content:encoded><![CDATA[<p>Here is a way to let ab produce a CSV file that covers a <b>range of concurrencies (like 0-1,000)</b>, saving you the hurdle of running ab 1,000 times (and merging results).</p><p>It has been used to benchmark Apache, IIS 5.1 and 7.0, Nginx, Cherokee, Rock and TrustLeap G-WAN, see:</p><p><a
href="http://trustleap.ch/" rel="nofollow">http://trustleap.ch/</a></p><p>You just have then to import the CSV file into Open Office to generate Charts!</p><p><code><br
/> #include<br
/> #include<br
/> #include<br
/> #include<br
/> #include<br
/> #include<br
/> #include</p><p>#define LOOP 1000<br
/> #define ITER   1<br
/> // ----------------------------------------------------------------------------<br
/> int main(int argc, char *argv[])<br
/> {<br
/> int   i, j, nbr, best;<br
/> char  str[256], buff[4000];<br
/> FILE *f, *fo=fopen("test.txt", "wb");</p><p> for(i=0; i res.txt", i?i:1);</p><p> for(best=0, j=0; j&lt;ITER; j++)<br
/> {<br
/> system(str);<br
/> Sleep (40);</p><p> // get the information we need from res.txt<br
/> if(!(f=fopen(&quot;res.txt&quot;, &quot;rb&quot;)))<br
/> {<br
/> printf(&quot;Can&#039;t open file\n&quot;);<br
/> return 1;<br
/> }<br
/> memset(buff, 0, sizeof(buff)-1);<br
/> fread (buff, 1, sizeof(buff)-1, f);<br
/> fclose(f);</p><p> nbr=0;<br
/> if(*buff)<br
/> {<br
/> char *p=(char*)strstr(buff, &quot;Requests per second:&quot;);<br
/> if(p) // &quot;Requests per second:    14,863.00 [#/sec] (mean)&quot;<br
/> {<br
/> while(*p==&#039; &#039;) p++;<br
/> nbr=atoi(p);<br
/> }<br
/> }<br
/> if(best&lt;nbr) best=nbr;<br
/> }</p><p> // save data<br
/> printf(&quot;%u,%u\n&quot;, i, best);<br
/> fprintf(fo, &quot;%u,%u\n&quot;, i, best);<br
/> }<br
/> fclose(fo);<br
/> return 0;<br
/> }<br
/> // ----------------------------------------------------------------------------<br
/> </code></p> ]]></content:encoded> </item> <item><title>By: fantonio</title><link>http://www.cyberciti.biz/tips/howto-performance-benchmarks-a-web-server.html#comment-149548</link> <dc:creator>fantonio</dc:creator> <pubDate>Sat, 18 Jul 2009 02:56:18 +0000</pubDate> <guid
isPermaLink="false">http://www.cyberciti.biz/tips/howto-performance-benchmarks-a-web-server.html#comment-149548</guid> <description>Very good!</description> <content:encoded><![CDATA[<p>Very good!</p> ]]></content:encoded> </item> <item><title>By: Nung</title><link>http://www.cyberciti.biz/tips/howto-performance-benchmarks-a-web-server.html#comment-149491</link> <dc:creator>Nung</dc:creator> <pubDate>Wed, 15 Jul 2009 03:10:45 +0000</pubDate> <guid
isPermaLink="false">http://www.cyberciti.biz/tips/howto-performance-benchmarks-a-web-server.html#comment-149491</guid> <description>If want to test on Windows (apache) , what method.</description> <content:encoded><![CDATA[<p>If want to test on Windows (apache) , what method.</p> ]]></content:encoded> </item> <item><title>By: Josh Bodily</title><link>http://www.cyberciti.biz/tips/howto-performance-benchmarks-a-web-server.html#comment-146980</link> <dc:creator>Josh Bodily</dc:creator> <pubDate>Thu, 29 Jan 2009 21:08:38 +0000</pubDate> <guid
isPermaLink="false">http://www.cyberciti.biz/tips/howto-performance-benchmarks-a-web-server.html#comment-146980</guid> <description>I think that the extension should be .csv, and not .cvs in your example, otherwise you won&#039;t be able to open it with any spreadsheet apps.</description> <content:encoded><![CDATA[<p>I think that the extension should be .csv, and not .cvs in your example, otherwise you won&#8217;t be able to open it with any spreadsheet apps.</p> ]]></content:encoded> </item> <item><title>By: Gail Wiseman</title><link>http://www.cyberciti.biz/tips/howto-performance-benchmarks-a-web-server.html#comment-146482</link> <dc:creator>Gail Wiseman</dc:creator> <pubDate>Mon, 29 Dec 2008 12:26:02 +0000</pubDate> <guid
isPermaLink="false">http://www.cyberciti.biz/tips/howto-performance-benchmarks-a-web-server.html#comment-146482</guid> <description>Most of the output of ab is self explaining, but I wonder if there is a complete description of this output.
Thanks,
Gail</description> <content:encoded><![CDATA[<p>Most of the output of ab is self explaining, but I wonder if there is a complete description of this output.</p><p>Thanks,<br
/> Gail</p> ]]></content:encoded> </item> <item><title>By: Roger Campbell</title><link>http://www.cyberciti.biz/tips/howto-performance-benchmarks-a-web-server.html#comment-145142</link> <dc:creator>Roger Campbell</dc:creator> <pubDate>Mon, 29 Sep 2008 15:21:07 +0000</pubDate> <guid
isPermaLink="false">http://www.cyberciti.biz/tips/howto-performance-benchmarks-a-web-server.html#comment-145142</guid> <description>There are a bunch of commercial apps with Load Runner (HP) being probably the most well known and expensive.  In addition, here are some free tools that improve on ab functionality quite a bit but take more time to understand and use.
www.webload.org
jakarta.apache.org/jmeter/
www.pushtotest.com
My company (awebstorm.com) is working on providing this as a web service for release by the end of 2008.
Roger</description> <content:encoded><![CDATA[<p>There are a bunch of commercial apps with Load Runner (HP) being probably the most well known and expensive.  In addition, here are some free tools that improve on ab functionality quite a bit but take more time to understand and use.</p><p><a
href="http://www.webload.org" rel="nofollow">http://www.webload.org</a><br
/> jakarta.apache.org/jmeter/<br
/> <a
href="http://www.pushtotest.com" rel="nofollow">http://www.pushtotest.com</a></p><p>My company (awebstorm.com) is working on providing this as a web service for release by the end of 2008.</p><p>Roger</p> ]]></content:encoded> </item> <item><title>By: Kapil Krishnan CPK</title><link>http://www.cyberciti.biz/tips/howto-performance-benchmarks-a-web-server.html#comment-145083</link> <dc:creator>Kapil Krishnan CPK</dc:creator> <pubDate>Tue, 23 Sep 2008 04:30:34 +0000</pubDate> <guid
isPermaLink="false">http://www.cyberciti.biz/tips/howto-performance-benchmarks-a-web-server.html#comment-145083</guid> <description>Thanks everyone. Actually it was taking random values at different instances. But the performance is still same.
If you want to know more about it just download Apache Source code and check  /mod/source/mod_backtrace.c
/mod/source/mod_performance.c etc
This C files will tell you the more details.
Regards
Kapil Krishnan CPK</description> <content:encoded><![CDATA[<p>Thanks everyone. Actually it was taking random values at different instances. But the performance is still same.</p><p>If you want to know more about it just download Apache Source code and check  /mod/source/mod_backtrace.c<br
/> /mod/source/mod_performance.c etc</p><p>This C files will tell you the more details.</p><p>Regards</p><p>Kapil Krishnan CPK</p> ]]></content:encoded> </item> <item><title>By: stromanbieter</title><link>http://www.cyberciti.biz/tips/howto-performance-benchmarks-a-web-server.html#comment-144860</link> <dc:creator>stromanbieter</dc:creator> <pubDate>Fri, 05 Sep 2008 18:08:14 +0000</pubDate> <guid
isPermaLink="false">http://www.cyberciti.biz/tips/howto-performance-benchmarks-a-web-server.html#comment-144860</guid> <description>with the parameter &quot;-c&quot; (concurrency) you can set the number of multiple requests to perform at a time. Default is one request at a time.</description> <content:encoded><![CDATA[<p>with the parameter &#8220;-c&#8221; (concurrency) you can set the number of multiple requests to perform at a time. Default is one request at a time.</p> ]]></content:encoded> </item> <item><title>By: Autarch</title><link>http://www.cyberciti.biz/tips/howto-performance-benchmarks-a-web-server.html#comment-144803</link> <dc:creator>Autarch</dc:creator> <pubDate>Sat, 30 Aug 2008 11:17:21 +0000</pubDate> <guid
isPermaLink="false">http://www.cyberciti.biz/tips/howto-performance-benchmarks-a-web-server.html#comment-144803</guid> <description>Any suggestions for accurately testing a large numbers of concurrent users?</description> <content:encoded><![CDATA[<p>Any suggestions for accurately testing a large numbers of concurrent users?</p> ]]></content:encoded> </item> <item><title>By: Jan</title><link>http://www.cyberciti.biz/tips/howto-performance-benchmarks-a-web-server.html#comment-144786</link> <dc:creator>Jan</dc:creator> <pubDate>Thu, 28 Aug 2008 07:27:17 +0000</pubDate> <guid
isPermaLink="false">http://www.cyberciti.biz/tips/howto-performance-benchmarks-a-web-server.html#comment-144786</guid> <description>The best would be to run the ab test from another server. This create the most realistic context for the test.</description> <content:encoded><![CDATA[<p>The best would be to run the ab test from another server. This create the most realistic context for the test.</p> ]]></content:encoded> </item> </channel> </rss>
