<?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; satishgaudo</title>
	<atom:link href="http://satishgaudo.com/satblog/author/admin/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>Linux command to replace a string across multiple files</title>
		<link>http://satishgaudo.com/satblog/2010/08/26/linux-command-to-replace-a-string-across-multiple-files/</link>
		<comments>http://satishgaudo.com/satblog/2010/08/26/linux-command-to-replace-a-string-across-multiple-files/#comments</comments>
		<pubDate>Thu, 26 Aug 2010 06:27:18 +0000</pubDate>
		<dc:creator>satishgaudo</dc:creator>
				<category><![CDATA[linux]]></category>
		<category><![CDATA[Linux command to replace a string across multiple files]]></category>
		<category><![CDATA[sed]]></category>

		<guid isPermaLink="false">http://satishgaudo.com/satblog/?p=263</guid>
		<description><![CDATA[
			
				
			
		
sed -i &#8217;s/product1.php/product.php/g&#8217; *.php
In the command above  &#8220;product1.php&#8221; is replaced with &#8220;product.php&#8221; across all files with extension &#8220;.php&#8221; within the project folder.
]]></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%2F08%2F26%2Flinux-command-to-replace-a-string-across-multiple-files%2F"><br />
				<img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fsatishgaudo.com%2Fsatblog%2F2010%2F08%2F26%2Flinux-command-to-replace-a-string-across-multiple-files%2F&amp;style=normal" height="61" width="50" /><br />
			</a>
		</div>
<p>sed -i &#8217;s/product1.php/product.php/g&#8217; *.php</p>
<p>In the command above  &#8220;product1.php&#8221; is replaced with &#8220;product.php&#8221; across all files with extension &#8220;.php&#8221; within the project folder.</p>
]]></content:encoded>
			<wfw:commentRss>http://satishgaudo.com/satblog/2010/08/26/linux-command-to-replace-a-string-across-multiple-files/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Learn at Ease through videos: Khan Academy</title>
		<link>http://satishgaudo.com/satblog/2010/08/26/learn-at-ease-through-videos-khan-academy/</link>
		<comments>http://satishgaudo.com/satblog/2010/08/26/learn-at-ease-through-videos-khan-academy/#comments</comments>
		<pubDate>Thu, 26 Aug 2010 06:20:32 +0000</pubDate>
		<dc:creator>satishgaudo</dc:creator>
				<category><![CDATA[Technology updates]]></category>
		<category><![CDATA[Khan Academy]]></category>
		<category><![CDATA[Probability]]></category>
		<category><![CDATA[Salman Khan]]></category>
		<category><![CDATA[Statistics]]></category>
		<category><![CDATA[video learning]]></category>

		<guid isPermaLink="false">http://satishgaudo.com/satblog/?p=260</guid>
		<description><![CDATA[
			
				
			
		
The Khan Academy is a not-for-profit 501(c)(3) with the mission of  providing a world-class education to anyone, anywhere.               	    	    Despite being the work of one man, Salman Khan,  this 1600+ video library [...]]]></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%2F08%2F26%2Flearn-at-ease-through-videos-khan-academy%2F"><br />
				<img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fsatishgaudo.com%2Fsatblog%2F2010%2F08%2F26%2Flearn-at-ease-through-videos-khan-academy%2F&amp;style=normal" height="61" width="50" /><br />
			</a>
		</div>
<p>The Khan Academy is a not-for-profit 501(c)(3) with the mission of  providing a world-class education to anyone, anywhere.               	    	    Despite being the work of one man, Salman Khan,  this 1600+ video library is the most-used educational video resource as  measured by YouTube video views per day and unique             	    	    users per month.  We are complementing this  ever-growing library with user-paced exercises&#8211;developed as an <a href="http://code.google.com/p/khanacademy/">open source project</a>&#8211;allowing the Khan Academy to become the free classroom for the World.</p>
<p>Check the link : <a title="http://www.khanacademy.org/" href="http://www.khanacademy.org/" target="_blank">http://www.khanacademy.org/</a></p>
]]></content:encoded>
			<wfw:commentRss>http://satishgaudo.com/satblog/2010/08/26/learn-at-ease-through-videos-khan-academy/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>SPARQL :An RDF query language</title>
		<link>http://satishgaudo.com/satblog/2010/08/23/sparql/</link>
		<comments>http://satishgaudo.com/satblog/2010/08/23/sparql/#comments</comments>
		<pubDate>Mon, 23 Aug 2010 14:09:08 +0000</pubDate>
		<dc:creator>satishgaudo</dc:creator>
				<category><![CDATA[Technology updates]]></category>
		<category><![CDATA[SPARQL]]></category>
		<category><![CDATA[SPARQL Browser for DbPedia]]></category>

		<guid isPermaLink="false">http://satishgaudo.com/satblog/?p=255</guid>
		<description><![CDATA[
			
				
			
		
SPARQL (pronounced &#8220;sparkle&#8221;) is an RDF query language; its name is a recursive acronym that stands for SPARQL Protocol and RDF Query Language. It was standardized by the RDF Data Access Working Group (DAWG) of the World Wide Web Consortium, and is considered a key semantic web technology. On 15 January 2008, SPARQL became an [...]]]></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%2F08%2F23%2Fsparql%2F"><br />
				<img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fsatishgaudo.com%2Fsatblog%2F2010%2F08%2F23%2Fsparql%2F&amp;style=normal" height="61" width="50" /><br />
			</a>
		</div>
<p>SPARQL (pronounced &#8220;sparkle&#8221;) is an RDF query language; its name is a recursive acronym that stands for SPARQL Protocol and RDF Query Language. It was standardized by the RDF Data Access Working Group (DAWG) of the World Wide Web Consortium, and is considered a key semantic web technology. On 15 January 2008, SPARQL became an official W3C Recommendation.</p>
<p>SPARQL allows for a query to consist of triple patterns, conjunctions, disjunctions, and optional patterns</p>
<p>Check this: <a title="http://en.wikipedia.org/wiki/SPARQL" href="http://en.wikipedia.org/wiki/SPARQL" target="_blank">http://en.wikipedia.org/wiki/SPARQL</a></p>
<p>SPARQL Browser for DbPedia  : <a title="http://dbpedia.org/snorql/?describe=http%3A//dbpedia.org/resource/Nokia" href="http://dbpedia.org/snorql/?describe=http%3A//dbpedia.org/resource/Nokia" target="_blank">http://dbpedia.org/snorql/?describe=http%3A//dbpedia.org/resource/Nokia</a></p>
]]></content:encoded>
			<wfw:commentRss>http://satishgaudo.com/satblog/2010/08/23/sparql/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>DBpedia:sophisticated queries against Wikipedia</title>
		<link>http://satishgaudo.com/satblog/2010/08/23/dbpediasophisticated-queries-against-wikipedia/</link>
		<comments>http://satishgaudo.com/satblog/2010/08/23/dbpediasophisticated-queries-against-wikipedia/#comments</comments>
		<pubDate>Mon, 23 Aug 2010 14:03:14 +0000</pubDate>
		<dc:creator>satishgaudo</dc:creator>
				<category><![CDATA[Technology updates]]></category>
		<category><![CDATA[DBpedia]]></category>
		<category><![CDATA[sophisticated queries against Wikipedia]]></category>
		<category><![CDATA[Wikipedia]]></category>

		<guid isPermaLink="false">http://satishgaudo.com/satblog/?p=251</guid>
		<description><![CDATA[
			
				
			
		



DBpedia is a community effort to extract structured information from Wikipedia  and to make this information available on the Web. DBpedia allows  you to ask sophisticated queries against Wikipedia, and to link other  data sets on the Web to Wikipedia data. We hope this will make it easier  for the amazing amount of information in Wikipedia to be used in new  and interesting ways, and that it might inspire new mechanisms  for navigating, [...]]]></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%2F08%2F23%2Fdbpediasophisticated-queries-against-wikipedia%2F"><br />
				<img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fsatishgaudo.com%2Fsatblog%2F2010%2F08%2F23%2Fdbpediasophisticated-queries-against-wikipedia%2F&amp;style=normal" height="61" width="50" /><br />
			</a>
		</div>
<div id="infomenu"><!-- div id="languages"> <a href="http://wiki.dbpedia.org/de/Aktuelles" mce_href="http://wiki.dbpedia.org/de/Aktuelles"><img src="http://wiki.dbpedia.org/themes/dbpedia2007/icons/de.gif" mce_src="http://wiki.dbpedia.org/themes/dbpedia2007/icons/de.gif" alt="" title="Deutsche Webseite" /><span>Deutsche Webseite</span></a> </div -->
<div><img style="display: block;" src="http://wiki.dbpedia.org/images/z.gif" border="0" alt="" width="1" height="1" align="top" /></div>
</div>
<p id="p36616-1"><strong>DBpedia</strong> is a community effort to extract structured information from Wikipedia  and to make this information available on the Web. DBpedia allows  you to ask sophisticated queries against Wikipedia, and to link other  data sets on the Web to Wikipedia data. We hope this will make it easier  for the amazing amount of information in Wikipedia to be used in new  and interesting ways, and that it might inspire new mechanisms  for navigating, linking and improving the encyclopaedia itself.</p>
<p><a title="http://dbpedia.org/About" href="http://dbpedia.org/About" target="_blank"><span style="text-decoration: underline;">http://dbpedia.org/About</span></a></p>
]]></content:encoded>
			<wfw:commentRss>http://satishgaudo.com/satblog/2010/08/23/dbpediasophisticated-queries-against-wikipedia/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Ganglia : monitoring framework</title>
		<link>http://satishgaudo.com/satblog/2010/07/30/ganglia-monitoring-framework/</link>
		<comments>http://satishgaudo.com/satblog/2010/07/30/ganglia-monitoring-framework/#comments</comments>
		<pubDate>Fri, 30 Jul 2010 11:37:45 +0000</pubDate>
		<dc:creator>satishgaudo</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[ganglia]]></category>
		<category><![CDATA[gmetd]]></category>
		<category><![CDATA[gmond]]></category>
		<category><![CDATA[ibm]]></category>
		<category><![CDATA[server health]]></category>
		<category><![CDATA[server monitoring]]></category>

		<guid isPermaLink="false">http://satishgaudo.com/satblog/?p=239</guid>
		<description><![CDATA[
			
				
			
		
Ganglia is a monitoring framework for clusters of servers. It records many statistics and can record custom defined ones too. It works in a distributed manner, with each machine you wish to collect statistics for running the Ganglia monitor deamon, gmond. Each monitoring deamon’s statistics are collected by a metadata daemon, gmetad, running on either [...]]]></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%2F07%2F30%2Fganglia-monitoring-framework%2F"><br />
				<img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fsatishgaudo.com%2Fsatblog%2F2010%2F07%2F30%2Fganglia-monitoring-framework%2F&amp;style=normal" height="61" width="50" /><br />
			</a>
		</div>
<p>Ganglia is a monitoring framework for clusters of servers. It records many statistics and can record custom defined ones too. It works in a distributed manner, with each machine you wish to collect statistics for running the Ganglia monitor deamon, gmond. Each monitoring deamon’s statistics are collected by a metadata daemon, gmetad, running on either one of the monitored hosts or a separate machine. Ganglia provides a PHP frontend which displays the data from gmetad in the form of pretty graphs.</p>
<p>For extra details: <a href="http://www.ibm.com/developerworks/wikis/display/WikiPtype/ganglia">http://www.ibm.com/developerworks/wikis/display/WikiPtype/ganglia</a></p>
<p>On installation ganglia will show default metrics like cluster load, cpu status etc.</p>
<div class="wp-caption alignnone" style="width: 460px"><img title="Ganglia web front" src="http://satishgaudo.com/satblog/ext_img/ganglia.jpg" alt="Ganglia web front" width="450" height="547" /><p class="wp-caption-text">Ganglia web front</p></div>
<p>Admin can define metrics that he want using &#8220;gmetric&#8221; command like</p>
<p><strong><span style="color: #ff0000;">/usr/bin/gmetric  -u hits -tfloat -n apache_status_200  -v 100</span></strong></p>
<p>where n is the metric name and v is the value</p>
<p>Following are the PHP scripts called on crontab,</p>
<p>1. <strong>Apache Access log metric to count hits status:</strong></p>
<p><span style="color: #000000;">$gmetric_command = &#8220;/usr/bin/gmetric&#8221;;<br />
//cat access.log | grep &#8220;31/Jul/2010:09&#8243; | cut -f9 -d &#8221; &#8221; | sort | uniq -c<br />
$sApacheLogFile=APACHE_LOG_DIR.&#8221;access.log&#8221;;<br />
$sCurrentDate=date(&#8221;d/M/Y:H&#8221;);<br />
$sStatCommand=&#8221;cat &#8220;.$sApacheLogFile.&#8221; | grep &#8216;&#8221;.$sCurrentDate.&#8221;&#8216; | cut -f9 -d &#8216; &#8216; | sort | uniq -c&#8221;;<br />
$aOutput=Array();<br />
$sOp=exec($sStatCommand,$aOutput);<br />
if(is_array($aOutput)){<br />
foreach($aOutput as $iK =&gt;$sValue) {<br />
$aData=Array();<br />
$aData=explode(&#8221; &#8220;,trim($sValue));<br />
if($aData[0]&gt;0){<br />
system($gmetric_command . &#8221; -u hits -tfloat -n apache_status_&#8221;.$aData[1].&#8221; -v &#8221; . $aData[0]);<br />
}<br />
}<br />
}</span></p>
<p><strong>2.  Mysql status metrics:</strong></p>
<p><span style="color: #000000;">//gmetric command<br />
$stats_command = &#8220;/usr/bin/mysqladmin -u root &#8211;password=mAnG0pp1 extended-status&#8221;;<br />
$gmetric_command = &#8220;/usr/bin/gmetric&#8221;;<br />
$aCounterMetrics = Array(<br />
&#8220;Bytes_received&#8221; =&gt; &#8220;bytes&#8221;,<br />
&#8220;Bytes_sent&#8221; =&gt; &#8220;bytes&#8221;,<br />
&#8220;Com_delete&#8221; =&gt; &#8220;operations&#8221;,<br />
&#8220;Com_insert&#8221; =&gt; &#8220;operations&#8221;,<br />
&#8220;Com_replace&#8221; =&gt; &#8220;operations&#8221;,<br />
&#8220;Com_select&#8221; =&gt; &#8220;operations&#8221;,<br />
&#8220;Com_update&#8221; =&gt; &#8220;operations&#8221;,<br />
&#8220;Key_reads&#8221; =&gt; &#8220;operations&#8221;,<br />
&#8220;Qcache_hits&#8221; =&gt; &#8220;hits&#8221;,<br />
&#8220;Questions&#8221; =&gt; &#8220;queries&#8221;,<br />
&#8220;Connections&#8221; =&gt; &#8220;connections&#8221;,<br />
&#8220;Threads_created&#8221; =&gt; &#8220;threads&#8221;,<br />
&#8220;Slow_queries&#8221; =&gt; &#8220;queries&#8221;<br />
);<br />
$aAbsoluteMetrics = array(<br />
&#8220;Threads_connected&#8221; =&gt; &#8220;threads&#8221;,<br />
&#8220;Threads_running&#8221; =&gt; &#8220;threads&#8221;<br />
);<br />
$sMysqlLogFile=LOG_DIR.&#8221;mysql_stats.txt&#8221;;</span></p>
<p><span style="color: #000000;">if(!file_exists($sMysqlLogFile)){<br />
//if no file , create a one<br />
system(&#8221;$stats_command &gt; $sMysqlLogFile&#8221;);<br />
}else {<br />
//get the old stats data<br />
$aStatsOld=file($sMysqlLogFile);<br />
$aMyStatsOld=Array();<br />
$i=0;<br />
if(is_array($aStatsOld)&amp;&amp; count($aStatsOld)&gt;0){<br />
for($i=3;$i&lt;(count($aStatsOld)-1);$i++){<br />
$aStatTemp=explode(&#8221;|&#8221;,$aStatsOld[$i]);<br />
$aMyStatsOld[trim($aStatTemp[1])]=trim($aStatTemp[2]);<br />
}<br />
}<br />
unset($aStatTemp);<br />
//get the time file modified last time<br />
$sFileModTime=filemtime($sMysqlLogFile);<br />
unlink($sMysqlLogFile);<br />
//get the current stats<br />
system(&#8221;$stats_command &gt; $sMysqlLogFile&#8221;);<br />
$sCurrentTime=time();<br />
$aStatsNew=file($sMysqlLogFile);<br />
$aMyStatsNew=Array();<br />
if(is_array($aStatsNew)&amp;&amp; count($aStatsNew)&gt;0){<br />
for($i=3;$i&lt;(count($aStatsNew)-1);$i++){<br />
$aStatTemp=explode(&#8221;|&#8221;,$aStatsNew[$i]);<br />
$aMyStatsNew[trim($aStatTemp[1])]=trim($aStatTemp[2]);<br />
}<br />
}<br />
$iTimeDiff=$sCurrentTime-$sFileModTime;<br />
if($iTimeDiff&lt;1){<br />
die(&#8221;Time difference can&#8217;t be less than 1&#8243;);<br />
}<br />
# Calculate deltas for counter metrics and send them to ganglia<br />
foreach($aCounterMetrics as $sMetric =&gt;$sUnit){<br />
//print $aMyStatsNew[$sMetric].&#8221; &#8211; &#8220;.$aMyStatsOld[$sMetric].&#8221;===&lt;br&gt;&#8221;;<br />
$iRate = ($aMyStatsNew[$sMetric] &#8211; $aMyStatsOld[$sMetric]) / $iTimeDiff;</span></p>
<p><span style="color: #000000;">if ($iRate&gt;=0) {<br />
system($gmetric_command . &#8221; -u &#8216;$sUnit/sec&#8217; -tfloat -n mysqld_&#8221; . $sMetric . &#8221; -v &#8221; . $iRate);<br />
}<br />
}<br />
//Just send absolute metrics. No need to calculate delta<br />
foreach($aAbsoluteMetrics as $sMetric =&gt;$sUnit){<br />
system($gmetric_command . &#8221; -u $sUnit -tuint16 -n mysqld_&#8221; .$sMetric. &#8221; -v &#8221; .$aMyStats[$sMetric]);<br />
}<br />
}</span></p>
<p><strong>3.  Memcache status:</strong></p>
<p><span style="color: #000000;">require_once(CLASS_PATH.&#8217;memcache.class.php&#8217;);<br />
$oCache = new Cache();<br />
$gmetric_command = &#8220;/usr/bin/gmetric&#8221;;<br />
$sMemcacheLogFile=LOG_DIR.&#8221;memcache_stats.txt&#8221;;<br />
$aOldStats=Array();<br />
//get the memcache stats<br />
$aNewStats=$oCache-&gt;getExtendedStats();<br />
if(!file_exists($sMemcacheLogFile)){<br />
$f=fopen($sMemcacheLogFile,&#8221;w&#8221;);<br />
fwrite($f,serialize($aNewStats));<br />
fclose($f);<br />
}else {<br />
$aOldStats=unserialize(file_get_contents($sMemcacheLogFile));<br />
$sFileModTime=filemtime($sMemcacheLogFile);<br />
$iTimeDiff=time()-$sFileModTime;</span></p>
<p><span style="color: #000000;">$f=fopen($sMemcacheLogFile,&#8221;w&#8221;);<br />
fwrite($f,serialize($aNewStats));<br />
fclose($f);<br />
}</span></p>
<p><span style="color: #000000;">#################################################################################<br />
# Memcache Hit Ratio<br />
#################################################################################<br />
foreach($aNewStats as $sHost =&gt;$aData){<br />
$sDisplayHost=$sHost;<br />
$sDisplayHost=str_replace(&#8221;.&#8221;,&#8221;_&#8221;,$sDisplayHost);<br />
$sDisplayHost=str_replace(&#8221;:&#8221;,&#8221;_&#8221;,$sDisplayHost);<br />
$iHits   = $aData['get_hits'];<br />
$iMisses = $aData['get_misses'];<br />
$iTotalReq = $iHits + $iMisses;<br />
$iHitRatio=0;<br />
if ($iTotalReq == 0 ) {<br />
$iHitRatio = 0.0;<br />
} else {<br />
$iHitRatio = $iHits / $iTotalReq;<br />
}</span></p>
<p><span style="color: #000000;">system($gmetric_command . &#8221; -u ratio -tfloat -n memcache_hit_ratio&#8221;.$sDisplayHost.&#8221; -v &#8221; . $iHitRatio);<br />
#################################################################################<br />
# Calculate Memcache Fill Ratio<br />
#################################################################################<br />
$iTotalBytes = 0;<br />
$iUsedBytes  = 0;<br />
$iCurrConnections = 0;<br />
$iCurrItems = 0;<br />
$iFillRatio = 0;<br />
$iEvictions = 0;<br />
$iBytesRead = 0;<br />
$iBytesWritten = 0;<br />
$iTotalBytes = $aData['limit_maxbytes'];<br />
$iUsedBytes  = $aData['bytes'];<br />
$iFillRatio = $iUsedBytes/$iTotalBytes;<br />
$iCurrConnections = $aData['curr_connections'];<br />
$iCurrItems = $aData['curr_items'];</span></p>
<p><span style="color: #000000;">$iEvictions = $aData['evictions'];<br />
$iBytesRead = $aData['bytes_read'];<br />
$iBytesWritten = $aData['bytes_written'];</span></p>
<p><span style="color: #000000;">system($gmetric_command . &#8221; -u ratio -tfloat -n memcache_fill_ratio&#8221;.$sDisplayHost.&#8221; -v &#8221; . $iFillRatio );<br />
system($gmetric_command . &#8221; -u connections -tfloat -n memcache_curr_connections&#8221;.$sDisplayHost.&#8221; -v &#8221; . $iCurrConnections );<br />
system($gmetric_command . &#8221; -u items -tfloat -n memcache_curr_items&#8221;.$sDisplayHost.&#8221; -v &#8221; . $iCurrItems );<br />
//calculate counter metrics such as bytes in/out and evictions</span></p>
<p><span style="color: #000000;">if (isset($aOldStats[$sHost]) &amp;&amp; $iBytesRead &gt;= $aOldStats[$sHost]['bytes_read']) {<br />
system($gmetric_command . &#8221; -u number -tuint32 -n memcache_evictions&#8221;.$sDisplayHost.&#8221; -v &#8221; . ($iEvictions &#8211; $aOldStats[$sHost]['evictions']) );<br />
system($gmetric_command . &#8221; -u bytes/s -tfloat -n memcache_bytes_read&#8221;.$sDisplayHost.&#8221; -v &#8221; . ( ($iBytesRead &#8211; $aOldStats[$sHost]['bytes_read']) / $iTimeDiff)  );<br />
system($gmetric_command . &#8221; -u bytes/s -tfloat -n memcache_bytes_written&#8221;.$sDisplayHost.&#8221; -v &#8221; . ( ($iBytesWritten &#8211; $aOldStats[$sHost]['bytes_written']) / $iTimeDiff ) );<br />
}</span></p>
<p><span style="color: #000000;">}</span></p>
<p><strong>&#8212;memcache.class.php</strong></p>
<p><span style="color: #000000;">&lt;?php<br />
/**<br />
*<br />
* Setup:<br />
*<br />
edit the singleton() metod<br />
and define the list of memcached servers in a 2-d array<br />
in the format<br />
array(<br />
array(&#8217;192.168.0.1&#8242;=&gt;&#8217;11211&#8242;),<br />
array(&#8217;192.168.0.2&#8242;=&gt;&#8217;11211&#8242;),<br />
);<br />
*<br />
*<br />
* Usage:<br />
*<br />
&lt;?php<br />
//include the class name<br />
include (&#8217;memcache.class.php&#8217;);</span></p>
<p><span style="color: #000000;">//store the variable<br />
Cache::set(&#8217;key&#8217;,'abc&#8217;);</span></p>
<p><span style="color: #000000;">//increment/decrement the integer value<br />
Cache::increment(&#8217;key&#8217;);<br />
Cache::decrement(&#8217;key&#8217;);</span></p>
<p><span style="color: #000000;">//fetch the value by it&#8217;s key<br />
echo Cache::get(&#8217;key&#8217;);</span></p>
<p><span style="color: #000000;">//delete the data<br />
echo Cache::delete(&#8217;key&#8217;);</span></p>
<p><span style="color: #000000;">//Clear the cache memory on all servers<br />
Cache::flush();</span></p>
<p><span style="color: #000000;">Cache::replace() and Cache::add are implemented also.</span></p>
<p><span style="color: #000000;">More information can be obtained here:<br />
http://www.danga.com/memcached/<br />
http://www.php.net/memcache</span></p>
<p><span style="color: #000000;">*/<br />
/** @ingroup classes<br />
*  This is the Classes group<br />
*  @{<br />
*/<br />
/**<br />
* @brief class Cache The class makes it easier to work with memcached servers and provides hints in the IDE like Zend Studio<br />
* @version 1<br />
*<br />
*/</span></p>
<p><span style="color: #000000;">class Cache {<br />
/**<br />
* Resources of the opend memcached connections<br />
* @var array [memcache objects]<br />
*/<br />
var $mc_servers = array();<br />
/**<br />
* Quantity of servers used<br />
* @var int<br />
*/</span></p>
<p><span style="color: #000000;">var $servers = array(</span></p>
<p><span style="color: #000000;">array(&#8217;127.0.0.1&#8242;=&gt;&#8217;11211&#8242;)<br />
);</span></p>
<p><span style="color: #000000;">var $mc_servers_count=1;</span></p>
<p><span style="color: #000000;">/**<br />
* Accepts the 2-d array with details of memcached servers<br />
*<br />
* @param array $servers<br />
*/<br />
function Cache(){</span></p>
<p><span style="color: #000000;">/*<br />
for ($i = 0, $n = count($this-&gt;servers); $i &lt; $n; ++$i){<br />
( $con = memcache_connect(key($this-&gt;servers[$i]), current($this-&gt;servers[$i])) )&amp;&amp;<br />
$this-&gt;mc_servers[] = $con;<br />
}<br />
$this-&gt;mc_servers_count = count($this-&gt;mc_servers);<br />
if (!$this-&gt;mc_servers_count){<br />
$this-&gt;mc_servers[0]=null;<br />
}<br />
*/<br />
}</span></p>
<p><span style="color: #000000;">/**<br />
* Get statistics of the server<br />
*<br />
* @param string $key<br />
* @param mix $value<br />
* @return bool<br />
*/<br />
function getExtendedStats() {<br />
$num=0;<br />
foreach ($this-&gt;servers[$num] as $host =&gt; $port) {<br />
$memcache_obj = memcache_pconnect($host, $port);<br />
}<br />
if (!$memcache_obj) return false;<br />
return $memcache_obj-&gt;getExtendedStats();<br />
}</span></p>
<p><span style="color: #000000;">//class end<br />
}</span></p>
<p>?&gt;</p>
]]></content:encoded>
			<wfw:commentRss>http://satishgaudo.com/satblog/2010/07/30/ganglia-monitoring-framework/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>jquery-oembed:</title>
		<link>http://satishgaudo.com/satblog/2010/06/30/jquery-oembed/</link>
		<comments>http://satishgaudo.com/satblog/2010/06/30/jquery-oembed/#comments</comments>
		<pubDate>Wed, 30 Jun 2010 11:12:51 +0000</pubDate>
		<dc:creator>satishgaudo</dc:creator>
				<category><![CDATA[Javascript]]></category>
		<category><![CDATA[jquery-oembed]]></category>
		<category><![CDATA[OEmbed API]]></category>

		<guid isPermaLink="false">http://satishgaudo.com/satblog/?p=221</guid>
		<description><![CDATA[
			
				
			
		
A simple jQuery plugin that uses OEmbed API to help displaying  embedded  content (such as photos or videos) in your website.
This plugin can be downloaded from google code base code.google.com
http://satishgaudo.com/satblog/ext_img/oEmbed/index.html
Quick explicit example:
&#60;html xmlns="http://www.w3.org/1999/xhtml"&#62;
&#60;head&#62;
&#60;title&#62;jquery-oembed explicit insert example&#60;/title&#62;
&#60;meta http-equiv="content-type" content="text/html; charset=utf-8"/&#62;
&#60;script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/
jquery/1.3.2/jquery.min.js"&#62;&#60;/script&#62;
&#60;script type="text/javascript" src="jquery.oembed.js"&#62;&#60;/script&#62;
&#60;/head&#62;
&#60;body&#62;
&#60;script type="text/javascript"&#62;
$(document).ready(function() {
 $("#container").oembed("http://www.flickr.com/photos/
14516334@N00/345009210/");
});
&#60;/script&#62;
&#60;div id="container"&#62;&#60;/div&#62;
&#60;/body&#62;
&#60;/html&#62;

In  this example the div#container will [...]]]></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%2F30%2Fjquery-oembed%2F"><br />
				<img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fsatishgaudo.com%2Fsatblog%2F2010%2F06%2F30%2Fjquery-oembed%2F&amp;style=normal" height="61" width="50" /><br />
			</a>
		</div>
<p>A simple jQuery plugin that uses OEmbed API to help displaying  embedded  content (such as photos or videos) in your website.</p>
<p>This plugin can be downloaded from google code base <a class="wp-caption" title="jquery-oembed" href="http://code.google.com/p/jquery-oembed/" target="_blank"><span style="color: #ff0000;">code.google.com</span></a></p>
<p><span style="color: #ff0000;">http://satishgaudo.com/satblog/ext_img/oEmbed/index.html</span></p>
<h2><a name="Quick_explicit_example">Quick explicit example</a>:</h2>
<pre>&lt;html xmlns="http://www.w3.org/1999/xhtml"&gt;
&lt;head&gt;
&lt;title&gt;jquery-oembed explicit insert example&lt;/title&gt;
&lt;meta http-equiv="content-type" content="text/html; charset=utf-8"/&gt;
&lt;script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/
jquery/1.3.2/jquery.min.js"&gt;&lt;/script&gt;
&lt;script type="text/javascript" src="jquery.oembed.js"&gt;&lt;/script&gt;
&lt;/head&gt;
&lt;body&gt;
&lt;script type="text/javascript"&gt;
$(document).ready(function() {
 $("#container").oembed("http://www.flickr.com/photos/
14516334@N00/345009210/");
});
&lt;/script&gt;
&lt;div id="container"&gt;&lt;/div&gt;
&lt;/body&gt;
&lt;/html&gt;

In  this example the div#container will display the photo from flickr.</pre>
]]></content:encoded>
			<wfw:commentRss>http://satishgaudo.com/satblog/2010/06/30/jquery-oembed/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>oEmbed</title>
		<link>http://satishgaudo.com/satblog/2010/06/30/oembed/</link>
		<comments>http://satishgaudo.com/satblog/2010/06/30/oembed/#comments</comments>
		<pubDate>Wed, 30 Jun 2010 10:44:05 +0000</pubDate>
		<dc:creator>satishgaudo</dc:creator>
				<category><![CDATA[Technology updates]]></category>
		<category><![CDATA[embedded content]]></category>
		<category><![CDATA[embedded representation of a URL]]></category>
		<category><![CDATA[oEmbed]]></category>
		<category><![CDATA[oembed.com]]></category>
		<category><![CDATA[third party content display]]></category>

		<guid isPermaLink="false">http://satishgaudo.com/satblog/?p=212</guid>
		<description><![CDATA[
			
				
			
		
oEmbed is a format for allowing an embedded representation of a URL on third party sites. The simple API allows a website to display embedded content (such as photos or videos) when a user posts a link to that resource, without having to parse the resource directly.
Full Spec
This spec is broken into three parts &#8211; [...]]]></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%2F30%2Foembed%2F"><br />
				<img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fsatishgaudo.com%2Fsatblog%2F2010%2F06%2F30%2Foembed%2F&amp;style=normal" height="61" width="50" /><br />
			</a>
		</div>
<p><span style="color: #000000;">oEmbed is a format for allowing an embedded representation of a URL on third party sites. The simple API allows a website to display embedded content (such as photos or videos) when a user posts a link to that resource, without having to parse the resource directly.</span></p>
<p><strong>Full Spec</strong></p>
<p>This spec is broken into three parts &#8211; configuration, the consumer request and the provider response.</p>
<p>An oEmbed exchange occurs between a consumer and a provider. A consumer wishes to show an embedded representation of a third party resource on their own web site, such as a photo or an embedded video. A provider implements the oEmbed API to allow consumers to fetch that representation.</p>
<p>oEmbed providers can choose to make their oEmbed support discoverable by adding elements to the head of their existing (X)HTML documents.</p>
<p>Example :<br />
Providers: Youtube.com</p>
<p>URL: http://www.youtube.com/oembed?url=http://www.youtube.com/watch?v=iYMMv_JN3e0&amp;feature=fvhl&amp;format=xml</p>
<p>Response:</p>
<p>http://www.youtube.com/   Lord Balram &amp; Krishna &#8211; Part 1 &#8211; Animated Short Stories<br />
&lt;object width=&#8221;425&#8243; height=&#8221;344&#8243;&gt;&lt;param name=&#8221;movie&#8221; value=&#8221;http://www.youtube.com/v/iYMMv_JN3e0&amp;fs=1&#8243;&gt;&lt;/param&gt;&lt;param name=&#8221;allowFullScreen&#8221; value=&#8221;true&#8221;&gt;&lt;/param&gt;&lt;param name=&#8221;allowscriptaccess&#8221; value=&#8221;always&#8221;&gt;&lt;/param&gt;&lt;embed src=&#8221;http://www.youtube.com/v/iYMMv_JN3e0&amp;fs=1&#8243; type=&#8221;application/x-shockwave-flash&#8221; width=&#8221;425&#8243; height=&#8221;344&#8243; allowscriptaccess=&#8221;always&#8221; allowfullscreen=&#8221;true&#8221;&gt;&lt;/embed&gt;&lt;/object&gt;<br />
RajshriKids<br />
344</p>
<p>480   425<br />
1.0<br />
http://www.youtube.com/user/RajshriKids</p>
<p>YouTube http://i2.ytimg.com/vi/iYMMv_JN3e0/hqdefault.jpg   video</p>
<p>360</p>
<p>For complete information,please read the reference url below:<br />
<span style="color: red"><strong><a href="http://www.oembed.com/">oEmbed: http://www.oembed.com/</a></strong></span></p>
<p><strong>Supported OEmbed providers¶</strong></p>
<p><span style="color: #3366ff;">* 5min<br />
* Amazon Product Images<br />
* Flickr<br />
* Google Video<br />
* Hulu<br />
* Imdb<br />
* Metacafe<br />
* Myspace Videos<br />
* Qik<br />
* Revision3<br />
* Screenr<br />
* Slideshare<br />
* Twitpic<br />
* Viddler<br />
* Vimeo<br />
* Wikipedia<br />
* WordPress<br />
* YouTube </span></p>
]]></content:encoded>
			<wfw:commentRss>http://satishgaudo.com/satblog/2010/06/30/oembed/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>HTML 5: Google and Apple unveils new sites to showcase HTML5</title>
		<link>http://satishgaudo.com/satblog/2010/06/24/html-5-google-and-apple-unveils-new-sites-to-showcase-html5/</link>
		<comments>http://satishgaudo.com/satblog/2010/06/24/html-5-google-and-apple-unveils-new-sites-to-showcase-html5/#comments</comments>
		<pubDate>Thu, 24 Jun 2010 09:22:31 +0000</pubDate>
		<dc:creator>satishgaudo</dc:creator>
				<category><![CDATA[Technology updates]]></category>
		<category><![CDATA[apple]]></category>
		<category><![CDATA[apple html 5]]></category>
		<category><![CDATA[google html 5]]></category>
		<category><![CDATA[HTML]]></category>
		<category><![CDATA[HTML5]]></category>

		<guid isPermaLink="false">http://satishgaudo.com/satblog/?p=209</guid>
		<description><![CDATA[
			
				
			
		
Earlier this month, Apple and Google unveiled new sites to showcase HTML5. On it, they showed off a number of impressive web demos coded using only HTML5 technologies.
Google&#8217;s HTML 5 site: http://www.html5rocks.com/
Apple&#8217;s HTML 5 site: http://www.apple.com/html5/
]]></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%2F24%2Fhtml-5-google-and-apple-unveils-new-sites-to-showcase-html5%2F"><br />
				<img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fsatishgaudo.com%2Fsatblog%2F2010%2F06%2F24%2Fhtml-5-google-and-apple-unveils-new-sites-to-showcase-html5%2F&amp;style=normal" height="61" width="50" /><br />
			</a>
		</div>
<p>Earlier this month, Apple and Google unveiled new sites to showcase HTML5. On it, they showed off a number of impressive web demos coded using only HTML5 technologies.</p>
<p><a href="http://slides.html5rocks.com/#slide1">Google&#8217;s HTML 5 site: http://www.html5rocks.com/</a></p>
<p><a href="http://www.apple.com/html5/">Apple&#8217;s HTML 5 site: http://www.apple.com/html5/</a></p>
]]></content:encoded>
			<wfw:commentRss>http://satishgaudo.com/satblog/2010/06/24/html-5-google-and-apple-unveils-new-sites-to-showcase-html5/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<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>Tuning LAMP systems, Part 2: Optimizing Apache and PHP</title>
		<link>http://satishgaudo.com/satblog/2010/05/07/tuning-lamp-systems-part-2-optimizing-apache-and-php/</link>
		<comments>http://satishgaudo.com/satblog/2010/05/07/tuning-lamp-systems-part-2-optimizing-apache-and-php/#comments</comments>
		<pubDate>Fri, 07 May 2010 05:47:23 +0000</pubDate>
		<dc:creator>satishgaudo</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[Part 2: Optimizing Apache and PHP]]></category>
		<category><![CDATA[Tuning LAMP systems]]></category>

		<guid isPermaLink="false">http://satishgaudo.com/satblog/?p=196</guid>
		<description><![CDATA[
			
				
			
		
Here is an link from digg.com, Tuning LAMP systems, Part 2: Optimizing Apache and PHP
Tuning LAMP systems, Part 2: Optimizing Apache and PHP
]]></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%2F05%2F07%2Ftuning-lamp-systems-part-2-optimizing-apache-and-php%2F"><br />
				<img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fsatishgaudo.com%2Fsatblog%2F2010%2F05%2F07%2Ftuning-lamp-systems-part-2-optimizing-apache-and-php%2F&amp;style=normal" height="61" width="50" /><br />
			</a>
		</div>
<p>Here is an link from digg.com, Tuning LAMP systems, Part 2: Optimizing Apache and PHP</p>
<p><a class="wp-caption" title="Tuning LAMP systems, Part 2: Optimizing Apache and PHP" href="http://digg.com/d38pEi" target="_blank"><span style="text-decoration: underline;"><span style="color: #ff0000;">Tuning LAMP systems, Part 2: Optimizing Apache and PHP</span></span></a></p>
]]></content:encoded>
			<wfw:commentRss>http://satishgaudo.com/satblog/2010/05/07/tuning-lamp-systems-part-2-optimizing-apache-and-php/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
