<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	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/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>satishgaudo.com &#187; Apache</title>
	<atom:link href="http://satishgaudo.com/satblog/category/apache/feed/" rel="self" type="application/rss+xml" />
	<link>http://satishgaudo.com/satblog</link>
	<description>Understanding technology</description>
	<lastBuildDate>Thu, 26 Aug 2010 06:27:18 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.1</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>ab &#8211; Apache HTTP server benchmarking tool</title>
		<link>http://satishgaudo.com/satblog/2010/06/19/ab-apache-http-server-benchmarking-tool/</link>
		<comments>http://satishgaudo.com/satblog/2010/06/19/ab-apache-http-server-benchmarking-tool/#comments</comments>
		<pubDate>Sat, 19 Jun 2010 10:08:33 +0000</pubDate>
		<dc:creator>satishgaudo</dc:creator>
				<category><![CDATA[Apache]]></category>
		<category><![CDATA[ab]]></category>
		<category><![CDATA[benchmarking]]></category>
		<category><![CDATA[load]]></category>

		<guid isPermaLink="false">http://satishgaudo.com/satblog/?p=205</guid>
		<description><![CDATA[
			
				
			
		
ab is a tool for benchmarking your Apache Hypertext Transfer Protocol (HTTP) server. It is designed to give you an impression of how your current Apache installation performs. This especially shows you how many requests per second your Apache installation is capable of serving.
Apache Manual URL
Usage: ab [options] [http://]hostname[:port]/path
Options are:
    -n requests [...]]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: right; margin-left: 10px;">
			<a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fsatishgaudo.com%2Fsatblog%2F2010%2F06%2F19%2Fab-apache-http-server-benchmarking-tool%2F"><br />
				<img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fsatishgaudo.com%2Fsatblog%2F2010%2F06%2F19%2Fab-apache-http-server-benchmarking-tool%2F&amp;style=normal" height="61" width="50" /><br />
			</a>
		</div>
<p>ab is a tool for benchmarking your Apache Hypertext Transfer Protocol (HTTP) server. It is designed to give you an impression of how your current Apache installation performs. This especially shows you how many requests per second your Apache installation is capable of serving.</p>
<p><a href="http://httpd.apache.org/docs/2.0/programs/ab.html">Apache Manual URL</a></p>
<p>Usage: ab [options] [http://]hostname[:port]/path<br />
Options are:<br />
    -n requests     Number of requests to perform<br />
    -c concurrency  Number of multiple requests to make<br />
    -t timelimit    Seconds to max. wait for responses<br />
    -p postfile     File containing data to POST<br />
    -T content-type Content-type header for POSTing<br />
    -v verbosity    How much troubleshooting info to print<br />
    -w              Print out results in HTML tables<br />
    -i              Use HEAD instead of GET<br />
    -x attributes   String to insert as table attributes<br />
    -y attributes   String to insert as tr attributes<br />
    -z attributes   String to insert as td or th attributes<br />
    -C attribute    Add cookie, eg. &#8216;Apache=1234. (repeatable)<br />
    -H attribute    Add Arbitrary header line, eg. &#8216;Accept-Encoding: gzip&#8217;<br />
                    Inserted after all normal header lines. (repeatable)<br />
    -A attribute    Add Basic WWW Authentication, the attributes<br />
                    are a colon separated username and password.<br />
    -P attribute    Add Basic Proxy Authentication, the attributes<br />
                    are a colon separated username and password.<br />
    -X proxy:port   Proxyserver and port number to use<br />
    -V              Print version number and exit<br />
    -k              Use HTTP KeepAlive feature<br />
    -d              Do not show percentiles served table.<br />
    -S              Do not show confidence estimators and warnings.<br />
    -g filename     Output collected data to gnuplot format file.<br />
    -e filename     Output CSV file with percentages served<br />
    -h              Display usage information (this message)</p>
<p><strong>Example: </strong></p>
<p>1] ab -n 100 -c 10 www.celebrity.com/qna/qna.php?starid=1<br />
 &#8211; No table indexing<br />
 &#8211; No code optimization</p>
<p>This is ApacheBench, Version 2.0.41-dev <$Revision: 1.141 $> apache-2.0<br />
Copyright (c) 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/<br />
Copyright (c) 1998-2002 The Apache Software Foundation, http://www.apache.org/</p>
<p>Benchmarking www.celebrity.com (be patient)&#8230;..done</p>
<p>Server Software:        Apache/2.0.52<br />
Server Hostname:        www.celebrity.com<br />
Server Port:            80</p>
<p>Document Path:          /qna/qna.php?starid=1<br />
Document Length:        8237 bytes</p>
<p>Concurrency Level:      10<br />
Time taken for tests:   12.370747 seconds<br />
Complete requests:      100<br />
Failed requests:        0<br />
Write errors:           0<br />
Total transferred:      841100 bytes<br />
HTML transferred:       823700 bytes<br />
Requests per second:    8.08 [#/sec] (mean)<br />
Time per request:       1237.075 [ms] (mean)<br />
Time per request:       123.707 [ms] (mean, across all concurrent requests)<br />
Transfer rate:          66.37 [Kbytes/sec] received</p>
<p>Connection Times (ms)<br />
              min  mean[+/-sd] median   max<br />
Connect:        0    0   0.0      0       0<br />
Processing:   346 1169 1023.3    906    7490<br />
Waiting:      345 1168 1023.3    905    7489<br />
Total:        346 1169 1023.3    906    7490</p>
<p>Percentage of the requests served within a certain time (ms)<br />
  50%    906<br />
  66%   1064<br />
  75%   1240<br />
  80%   1363<br />
  90%   2402<br />
  95%   2618<br />
  98%   6031<br />
  99%   7490<br />
 100%   7490 (longest request)</p>
<p>2] ab -n 100 -c 10 www.celebrity.com/qna/qna.php?starid=1<br />
 &#8211; implemented table indexing<br />
 &#8211; code optimized</p>
<p>This is ApacheBench, Version 2.0.41-dev <$Revision: 1.141 $> apache-2.0<br />
Copyright (c) 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/<br />
Copyright (c) 1998-2002 The Apache Software Foundation, http://www.apache.org/</p>
<p>Benchmarking www.celebrity.com (be patient)&#8230;..done</p>
<p>Server Software:        Apache/2.0.52<br />
Server Hostname:        www.celebrity.com<br />
Server Port:            80</p>
<p>Document Path:          /qna/qna.php?starid=1<br />
Document Length:        8237 bytes</p>
<p>Concurrency Level:      10<br />
Time taken for tests:   10.537165 seconds<br />
Complete requests:      100<br />
Failed requests:        0<br />
Write errors:           0<br />
Total transferred:      841100 bytes<br />
HTML transferred:       823700 bytes<br />
Requests per second:    9.49 [#/sec] (mean)<br />
Time per request:       1053.716 [ms] (mean)<br />
Time per request:       105.372 [ms] (mean, across all concurrent requests)<br />
Transfer rate:          77.91 [Kbytes/sec] received</p>
<p>Connection Times (ms)<br />
              min  mean[+/-sd] median   max<br />
Connect:        0    0   0.0      0       0<br />
Processing:   354 1008 438.9    914    2314<br />
Waiting:      353 1007 438.9    913    2313<br />
Total:        354 1008 438.9    914    2314</p>
<p>Percentage of the requests served within a certain time (ms)<br />
  50%    914<br />
  66%   1104<br />
  75%   1261<br />
  80%   1353<br />
  90%   1590<br />
  95%   1913<br />
  98%   2296<br />
  99%   2314<br />
 100%   2314 (longest request)</p>
]]></content:encoded>
			<wfw:commentRss>http://satishgaudo.com/satblog/2010/06/19/ab-apache-http-server-benchmarking-tool/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>HTTP: Persistent connections</title>
		<link>http://satishgaudo.com/satblog/2010/01/08/http-persistent-connections/</link>
		<comments>http://satishgaudo.com/satblog/2010/01/08/http-persistent-connections/#comments</comments>
		<pubDate>Fri, 08 Jan 2010 11:38:03 +0000</pubDate>
		<dc:creator>satishgaudo</dc:creator>
				<category><![CDATA[Apache]]></category>

		<guid isPermaLink="false">http://satishgaudo.com/satblog/?p=127</guid>
		<description><![CDATA[
			
				
			
		
In HTTP/0.9 and 1.0, the connection is closed after a single request/response pair. In HTTP/1.1 a keep-alive-mechanism was introduced, where a connection could be reused for more than one request.
Such persistent connections reduce lag perceptibly, because the client does not need to re-negotiate the TCP connection after the first request has been sent.
Version 1.1 of [...]]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: right; margin-left: 10px;">
			<a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fsatishgaudo.com%2Fsatblog%2F2010%2F01%2F08%2Fhttp-persistent-connections%2F"><br />
				<img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fsatishgaudo.com%2Fsatblog%2F2010%2F01%2F08%2Fhttp-persistent-connections%2F&amp;style=normal" height="61" width="50" /><br />
			</a>
		</div>
<p>In HTTP/0.9 and 1.0, the connection is closed after a single request/response pair. In HTTP/1.1 a keep-alive-mechanism was introduced, where a connection could be reused for more than one request.</p>
<p>Such persistent connections reduce lag perceptibly, because the client does not need to re-negotiate the TCP connection after the first request has been sent.</p>
<p>Version 1.1 of the protocol made bandwidth optimization improvements to HTTP/1.0. For example, HTTP/1.1 introduced chunked transfer encoding to allow content on persistent connections to be streamed, rather than buffered. HTTP pipelining further reduces lag time, allowing clients to send multiple requests before a previous response has been received to the first one. Another improvement to the protocol was byte serving, which is when a server transmits just the portion of a resource explicitly requested by a client.</p>
<p>Reference URL: <a href="http://en.wikipedia.org/wiki/Hypertext_Transfer_Protocol">http://en.wikipedia.org/wiki/Hypertext_Transfer_Protocol</a></p>
]]></content:encoded>
			<wfw:commentRss>http://satishgaudo.com/satblog/2010/01/08/http-persistent-connections/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Apache Virtual Host</title>
		<link>http://satishgaudo.com/satblog/2009/06/16/apache-virtual-host/</link>
		<comments>http://satishgaudo.com/satblog/2009/06/16/apache-virtual-host/#comments</comments>
		<pubDate>Tue, 16 Jun 2009 13:28:57 +0000</pubDate>
		<dc:creator>satishgaudo</dc:creator>
				<category><![CDATA[Apache]]></category>

		<guid isPermaLink="false">http://satishgaudo.com/satblog/2009/06/16/apache-virtual-host/</guid>
		<description><![CDATA[
			
				
			
		
The term Virtual Host refers to the practice of    maintaining more than one server on one machine, as     differentiated by their apparent hostname. For example, it is     often desirable for companies sharing a web server to have     their own domains, [...]]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: right; margin-left: 10px;">
			<a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fsatishgaudo.com%2Fsatblog%2F2009%2F06%2F16%2Fapache-virtual-host%2F"><br />
				<img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fsatishgaudo.com%2Fsatblog%2F2009%2F06%2F16%2Fapache-virtual-host%2F&amp;style=normal" height="61" width="50" /><br />
			</a>
		</div>
<p>The term Virtual Host refers to the practice of    maintaining more than one server on one machine, as     differentiated by their apparent hostname. For example, it is     often desirable for companies sharing a web server to have     their own domains, with web servers accessible as     www.company1.com and     www.company2.com, without requiring the user to     know any extra path information.</p>
<p>Apache was one of the first servers to support IP-based     virtual hosts right out of the box. Versions 1.1 and later of     Apache support both, IP-based and name-based virtual hosts     (vhosts). The latter variant of virtual hosts is sometimes also     called host-based or non-IP virtual hosts.</p>
<p>Here is the example of how to add an virtual hosts entry in your httpd.conf (/etc/httpd/conf)</p>

<div class="wp_syntax"><div class="code"><pre class="" style="font-family:monospace;">&lt;VirtualHost *:<span style="">80</span> &gt;
DocumentRoot /var/www/html/wwwsitefolder
#ServerName 192.168.0.66
ServerName www.satishgaudo.com
RewriteEngine On
RewriteRule ^/image/<span class="br0">&#40;</span>.*<span class="br0">&#41;</span>$Â  /image.php?do=readfile&amp;filepath=$<span style="">1</span>
SetEnvIfNoCase Request_URI \ \.<span class="br0">&#40;</span>?:gif|jpg|jpe?g|png<span class="br0">&#41;</span>$ no-gzip dont-vary
Header append Vary User-Agent env=!dont-vary
Header unset Pragma
FileETag None
&lt;FilesMatch &quot;\.<span class="br0">&#40;</span>gif|js|css|jpg|jpe?g|png<span class="br0">&#41;</span>$&quot;&gt;
Header set Cache-Control &quot;max-age=<span style="">2592000</span>, must-revalidate&quot;
&lt;/FilesMatch&gt;
CustomLog /var/log/httpd/satish_access_log combined
ErrorLog /var/log/httpd/satish_error.log
&lt;/VirtualHost&gt;</pre></div></div>

]]></content:encoded>
			<wfw:commentRss>http://satishgaudo.com/satblog/2009/06/16/apache-virtual-host/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>
