<?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 for Fernando Ipar</title>
	<atom:link href="http://fernandoipar.com/comments/feed/" rel="self" type="application/rss+xml" />
	<link>http://fernandoipar.com</link>
	<description>I love mankind! Its people I can&#039;t stand!</description>
	<lastBuildDate>Wed, 27 Jan 2010 19:05:16 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=abc</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>Comment on how to prevent explain from executing subqueries by Fernando Ipar</title>
		<link>http://fernandoipar.com/2010/01/26/how-to-prevent-explain-from-executing-subqueries/comment-page-1/#comment-116</link>
		<dc:creator>Fernando Ipar</dc:creator>
		<pubDate>Wed, 27 Jan 2010 19:05:16 +0000</pubDate>
		<guid isPermaLink="false">http://fernandoipar.com/?p=194#comment-116</guid>
		<description>Kristian: 

I&#039;ve poked around the source before to try and figure things out, but code for handling explain seems to be a bit distributed on the code base, so it takes more than just a few minutes reading to understand it. 

So that leaves me with my second best guess: strace. 

Take a look at this: 

(I&#039;m using lookup from udf_example.so)

mysql&gt; select lookup(url) from urls;
+---------------+
&#124; lookup(url)   &#124;
+---------------+
&#124; 69.80.205.238 &#124; 
&#124; 69.89.31.108  &#124; 
&#124; 69.80.205.238 &#124; 
+---------------+
3 rows in set (0.09 sec)

And here&#039;s the strace relevant for the lookup: 

[pid  8205]      0.000120 write(3, &quot;100127 16:40:23\t      9 Query       select lookup(url) from urls\n&quot;..., 65) = 65 
...
[pid  8205]      0.000878 open(&quot;/etc/resolv.conf&quot;, O_RDONLY) = 37 
[pid  8205]      0.000179 fstat(37, {st_mode=S_IFREG&#124;0644, st_size=240, ...}) = 0 


Now with explain: 

mysql&gt; explain select lookup(url) from urls;
+----+-------------+-------+------+---------------+------+---------+------+------+-------+
&#124; id &#124; select_type &#124; table &#124; type &#124; possible_keys &#124; key  &#124; key_len &#124; ref  &#124; rows &#124; Extra &#124;
+----+-------------+-------+------+---------------+------+---------+------+------+-------+
&#124;  1 &#124; SIMPLE      &#124; urls  &#124; ALL  &#124; NULL          &#124; NULL &#124; NULL    &#124; NULL &#124;    3 &#124;       &#124; 
+----+-------------+-------+------+---------------+------+---------+------+------+-------+
1 row in set (0.00 sec)

[pid  8205]      0.000137 write(3, &quot;100127 16:40:35\t      9 Query       explain select lookup(url) from urls\n&quot;..., 73) = 73 
[pid  8205]      0.000185 sched_setscheduler(8205, SCHED_OTHER, { 6 }) = -1 EINVAL (Invalid argument) 
[pid  8205]      0.000280 gettimeofday({1264617635, 884763}, NULL) = 0 
[pid  8205]      0.000091 gettimeofday({1264617635, 884852}, NULL) = 0 
[pid  8205]      0.000266 write(29, &quot;\x01\x00\x00\x01\x0a\x18\x00\x00\x02\x03\x64\x65\x66\x00\x00\x00\x02\x69\x64\x00\x0c\x3f\x00\x03\x00\x00\x00\x08\xa1\x00
\x00\x00\x00\x21\x00\x00\x03\x03\x64\x65\x66\x00\x00\x00\x0b\x73\x65\x6c\x65\x63\x74\x5f\x74\x79\x70\x65\x00\x0c\x08\x00\x13\x00\x00\x00\xfd\x01\x00\x1f\x00\
x00\x1b\x00\x00\x04\x03\x64\x65\x66\x00\x00\x00\x05\x74\x61\x62\x6c\x65\x00\x0c\x08\x00\x40\x00\x00\x00\xfd\x00\x00\x1f\x00\x00\x1a\x00\x00\x05\x03\x64\x65\x
66\x00\x00\x00\x04\x74\x79\x70\x65\x00\x0c\x08\x00\x0a\x00\x00\x00\xfd\x00\x00\x1f\x00\x00\x23\x00\x00\x06\x03\x64\x65\x66\x00\x00\x00\x0d\x70\x6f\x73\x73\x6
9\x62\x6c\x65\x5f\x6b\x65\x79\x73\x00\x0c\x08\x00\x00\x10\x00\x00\xfd\x00\x00\x1f\x00\x00\x19\x00\x00\x07\x03\x64\x65\x66\x00\x00\x00\x03\x6b\x65\x79\x00\x0c
\x08\x00\x40\x00\x00\x00\xfd\x00\x00\x1f\x00\x00\x1d\x00\x00\x08\x03\x64\x65\x66\x00\x00\x00\x07\x6b\x65\x79\x5f\x6c\x65\x6e\x00\x0c\x08\x00\x00\x10\x00\x00\
xfd\x00\x00\x1f\x00\x00\x19\x00\x00\x09\x03\x64\x65\x66\x00\x00\x00\x03\x72\x65\x66\x00\x0c\x08\x00\x00\x04\x00\x00\xfd\x00\x00\x1f\x00\x00\x1a\x00\x00\x0a\x
03\x64\x65\x66\x00\x00\x00\x04\x72\x6f\x77\x73\x00\x0c\x3f\x00\x0a\x00\x00\x00\x08\xa0\x00\x00\x00\x00\x1b\x00\x00\x0b\x03\x64\x65\x66\x00\x00\x00\x05\x45\x7
8\x74\x72\x61\x00\x0c\x08\x00\xff\x00\x00\x00\xfd\x01\x00\x1f\x00\x00\x05\x00\x00\x0c\xfe\x00\x00\x02\x00\x19\x00\x00\x0d\x01\x31\x06\x53\x49\x4d\x50\x4c\x45
\x04\x75\x72\x6c\x73\x03\x41\x4c\x4c\xfb\xfb\xfb\xfb\x01\x33\x00\x05\x00\x00\x0e\xfe\x00\x00\x02\x00&quot;..., 369) = 369 
[pid  8205]      0.000457 gettimeofday({1264617635, 885575}, NULL) = 0 
[pid  8205]      0.000092 sched_setscheduler(8205, SCHED_OTHER, { 8 }) = -1 EINVAL (Invalid argument) 
[pid  8205]      0.000103 gettimeofday({1264617635, 885770}, NULL) = 0 
[pid  8205]      0.000084 gettimeofday({1264617635, 885853}, NULL) = 0 
[pid  8205]      0.000086 gettimeofday({1264617635, 885939}, NULL) = 0 
[pid  8205]      0.000116 gettimeofday({1264617635, 886058}, NULL) = 0 
[pid  8205]      0.000130 write(4, &quot;# Time: 100127 16:40:35\n# User@Host: root[root] @ localhost []\n# Thread_id: 9  Schema: test\n# Query_time: 0.001985  Lo
ck_time: 0.000690  Rows_sent: 1  Rows_examined: 0  Rows_affected: 0  Rows_read: 1\nexplain select lookup(url) from urls;\n&quot;..., 238) = 238 
...


To discard a possible dns caching effect, I ran the original query twice on the same connection, and got the same strace output, so it&#039;s always going to /etc/resolv.conf

Still, without looking at the source code, this is just anecdotical evidence from one example, I&#039;ll try to look more into this and perhaps make a new post on the subject :)</description>
		<content:encoded><![CDATA[<p>Kristian: </p>
<p>I&#8217;ve poked around the source before to try and figure things out, but code for handling explain seems to be a bit distributed on the code base, so it takes more than just a few minutes reading to understand it. </p>
<p>So that leaves me with my second best guess: strace. </p>
<p>Take a look at this: </p>
<p>(I&#8217;m using lookup from udf_example.so)</p>
<p>mysql&gt; select lookup(url) from urls;<br />
+&#8212;&#8212;&#8212;&#8212;&#8212;+<br />
| lookup(url)   |<br />
+&#8212;&#8212;&#8212;&#8212;&#8212;+<br />
| 69.80.205.238 |<br />
| 69.89.31.108  |<br />
| 69.80.205.238 |<br />
+&#8212;&#8212;&#8212;&#8212;&#8212;+<br />
3 rows in set (0.09 sec)</p>
<p>And here&#8217;s the strace relevant for the lookup: </p>
<p>[pid  8205]      0.000120 write(3, &#8220;100127 16:40:23\t      9 Query       select lookup(url) from urls\n&#8221;&#8230;, 65) = 65<br />
&#8230;<br />
[pid  8205]      0.000878 open(&#8220;/etc/resolv.conf&#8221;, O_RDONLY) = 37<br />
[pid  8205]      0.000179 fstat(37, {st_mode=S_IFREG|0644, st_size=240, &#8230;}) = 0 </p>
<p>Now with explain: </p>
<p>mysql&gt; explain select lookup(url) from urls;<br />
+&#8212;-+&#8212;&#8212;&#8212;&#8212;-+&#8212;&#8212;-+&#8212;&#8212;+&#8212;&#8212;&#8212;&#8212;&#8212;+&#8212;&#8212;+&#8212;&#8212;&#8212;+&#8212;&#8212;+&#8212;&#8212;+&#8212;&#8212;-+<br />
| id | select_type | table | type | possible_keys | key  | key_len | ref  | rows | Extra |<br />
+&#8212;-+&#8212;&#8212;&#8212;&#8212;-+&#8212;&#8212;-+&#8212;&#8212;+&#8212;&#8212;&#8212;&#8212;&#8212;+&#8212;&#8212;+&#8212;&#8212;&#8212;+&#8212;&#8212;+&#8212;&#8212;+&#8212;&#8212;-+<br />
|  1 | SIMPLE      | urls  | ALL  | NULL          | NULL | NULL    | NULL |    3 |       |<br />
+&#8212;-+&#8212;&#8212;&#8212;&#8212;-+&#8212;&#8212;-+&#8212;&#8212;+&#8212;&#8212;&#8212;&#8212;&#8212;+&#8212;&#8212;+&#8212;&#8212;&#8212;+&#8212;&#8212;+&#8212;&#8212;+&#8212;&#8212;-+<br />
1 row in set (0.00 sec)</p>
<p>[pid  8205]      0.000137 write(3, &#8220;100127 16:40:35\t      9 Query       explain select lookup(url) from urls\n&#8221;&#8230;, 73) = 73<br />
[pid  8205]      0.000185 sched_setscheduler(8205, SCHED_OTHER, { 6 }) = -1 EINVAL (Invalid argument)<br />
[pid  8205]      0.000280 gettimeofday({1264617635, 884763}, NULL) = 0<br />
[pid  8205]      0.000091 gettimeofday({1264617635, 884852}, NULL) = 0<br />
[pid  8205]      0.000266 write(29, &#8220;\x01\x00\x00\x01\x0a\x18\x00\x00\x02\x03\x64\x65\x66\x00\x00\x00\x02\x69\x64\x00\x0c\x3f\x00\x03\x00\x00\x00\x08\xa1\x00<br />
\x00\x00\x00\x21\x00\x00\x03\x03\x64\x65\x66\x00\x00\x00\x0b\x73\x65\x6c\x65\x63\x74\x5f\x74\x79\x70\x65\x00\x0c\x08\x00\x13\x00\x00\x00\xfd\x01\x00\x1f\x00\<br />
x00\x1b\x00\x00\x04\x03\x64\x65\x66\x00\x00\x00\x05\x74\x61\x62\x6c\x65\x00\x0c\x08\x00\x40\x00\x00\x00\xfd\x00\x00\x1f\x00\x00\x1a\x00\x00\x05\x03\x64\x65\x<br />
66\x00\x00\x00\x04\x74\x79\x70\x65\x00\x0c\x08\x00\x0a\x00\x00\x00\xfd\x00\x00\x1f\x00\x00\x23\x00\x00\x06\x03\x64\x65\x66\x00\x00\x00\x0d\x70\x6f\x73\x73\x6<br />
9\x62\x6c\x65\x5f\x6b\x65\x79\x73\x00\x0c\x08\x00\x00\x10\x00\x00\xfd\x00\x00\x1f\x00\x00\x19\x00\x00\x07\x03\x64\x65\x66\x00\x00\x00\x03\x6b\x65\x79\x00\x0c<br />
\x08\x00\x40\x00\x00\x00\xfd\x00\x00\x1f\x00\x00\x1d\x00\x00\x08\x03\x64\x65\x66\x00\x00\x00\x07\x6b\x65\x79\x5f\x6c\x65\x6e\x00\x0c\x08\x00\x00\x10\x00\x00\<br />
xfd\x00\x00\x1f\x00\x00\x19\x00\x00\x09\x03\x64\x65\x66\x00\x00\x00\x03\x72\x65\x66\x00\x0c\x08\x00\x00\x04\x00\x00\xfd\x00\x00\x1f\x00\x00\x1a\x00\x00\x0a\x<br />
03\x64\x65\x66\x00\x00\x00\x04\x72\x6f\x77\x73\x00\x0c\x3f\x00\x0a\x00\x00\x00\x08\xa0\x00\x00\x00\x00\x1b\x00\x00\x0b\x03\x64\x65\x66\x00\x00\x00\x05\x45\x7<br />
8\x74\x72\x61\x00\x0c\x08\x00\xff\x00\x00\x00\xfd\x01\x00\x1f\x00\x00\x05\x00\x00\x0c\xfe\x00\x00\x02\x00\x19\x00\x00\x0d\x01\x31\x06\x53\x49\x4d\x50\x4c\x45<br />
\x04\x75\x72\x6c\x73\x03\x41\x4c\x4c\xfb\xfb\xfb\xfb\x01\x33\x00\x05\x00\x00\x0e\xfe\x00\x00\x02\x00&#8243;&#8230;, 369) = 369<br />
[pid  8205]      0.000457 gettimeofday({1264617635, 885575}, NULL) = 0<br />
[pid  8205]      0.000092 sched_setscheduler(8205, SCHED_OTHER, { 8 }) = -1 EINVAL (Invalid argument)<br />
[pid  8205]      0.000103 gettimeofday({1264617635, 885770}, NULL) = 0<br />
[pid  8205]      0.000084 gettimeofday({1264617635, 885853}, NULL) = 0<br />
[pid  8205]      0.000086 gettimeofday({1264617635, 885939}, NULL) = 0<br />
[pid  8205]      0.000116 gettimeofday({1264617635, 886058}, NULL) = 0<br />
[pid  8205]      0.000130 write(4, &#8220;# Time: 100127 16:40:35\n# User@Host: root[root] @ localhost []\n# Thread_id: 9  Schema: test\n# Query_time: 0.001985  Lo<br />
ck_time: 0.000690  Rows_sent: 1  Rows_examined: 0  Rows_affected: 0  Rows_read: 1\nexplain select lookup(url) from urls;\n&#8221;&#8230;, 238) = 238<br />
&#8230;</p>
<p>To discard a possible dns caching effect, I ran the original query twice on the same connection, and got the same strace output, so it&#8217;s always going to /etc/resolv.conf</p>
<p>Still, without looking at the source code, this is just anecdotical evidence from one example, I&#8217;ll try to look more into this and perhaps make a new post on the subject <img src='http://fernandoipar.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on how to prevent explain from executing subqueries by Kristian Nielsen</title>
		<link>http://fernandoipar.com/2010/01/26/how-to-prevent-explain-from-executing-subqueries/comment-page-1/#comment-114</link>
		<dc:creator>Kristian Nielsen</dc:creator>
		<pubDate>Wed, 27 Jan 2010 07:30:42 +0000</pubDate>
		<guid isPermaLink="false">http://fernandoipar.com/?p=194#comment-114</guid>
		<description>Hm, what if there is a user-defined function (UDF) which may have side effects?

    explain select id from projects where id = (select my_udf(max(id)) from projects where name like &#039;en%&#039;);

Would this EXPLAIN then actually call my_udf()? Seems a bit scary (but maybe one should expect that?)</description>
		<content:encoded><![CDATA[<p>Hm, what if there is a user-defined function (UDF) which may have side effects?</p>
<p>    explain select id from projects where id = (select my_udf(max(id)) from projects where name like &#8216;en%&#8217;);</p>
<p>Would this EXPLAIN then actually call my_udf()? Seems a bit scary (but maybe one should expect that?)</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Indexing text columns in MySQL by JonB</title>
		<link>http://fernandoipar.com/2009/08/12/indexing-text-columns-in-mysql/comment-page-1/#comment-112</link>
		<dc:creator>JonB</dc:creator>
		<pubDate>Wed, 25 Nov 2009 22:20:50 +0000</pubDate>
		<guid isPermaLink="false">http://fernandoipar.com/?p=178#comment-112</guid>
		<description>Thanks for an insight into a very thorny problem I am tackling in my latest project. Now, I need to grok this and do some testing.</description>
		<content:encoded><![CDATA[<p>Thanks for an insight into a very thorny problem I am tackling in my latest project. Now, I need to grok this and do some testing.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Using the ENUM data type to increase performance by Fernando</title>
		<link>http://fernandoipar.com/2009/03/09/using-the-enum-data-type-to-increase-performance/comment-page-1/#comment-111</link>
		<dc:creator>Fernando</dc:creator>
		<pubDate>Fri, 13 Nov 2009 13:53:41 +0000</pubDate>
		<guid isPermaLink="false">http://fernandoipar.com/?p=119#comment-111</guid>
		<description>Thanks for the message chris. 
I&#039;ve been neglecting the blog due to work lately, but I&#039;m sure coming back to it. 
I&#039;m standing by for OpenSQL Camp in Portland with my Percona team mates right now, that should give me some nice blogging material for my return :)</description>
		<content:encoded><![CDATA[<p>Thanks for the message chris.<br />
I&#8217;ve been neglecting the blog due to work lately, but I&#8217;m sure coming back to it.<br />
I&#8217;m standing by for OpenSQL Camp in Portland with my Percona team mates right now, that should give me some nice blogging material for my return <img src='http://fernandoipar.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Using the ENUM data type to increase performance by chris</title>
		<link>http://fernandoipar.com/2009/03/09/using-the-enum-data-type-to-increase-performance/comment-page-1/#comment-110</link>
		<dc:creator>chris</dc:creator>
		<pubDate>Fri, 13 Nov 2009 12:19:55 +0000</pubDate>
		<guid isPermaLink="false">http://fernandoipar.com/?p=119#comment-110</guid>
		<description>i hope that u continue on posting more samples of programs... thnx!</description>
		<content:encoded><![CDATA[<p>i hope that u continue on posting more samples of programs&#8230; thnx!</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Indexing text columns in MySQL by Julio</title>
		<link>http://fernandoipar.com/2009/08/12/indexing-text-columns-in-mysql/comment-page-1/#comment-109</link>
		<dc:creator>Julio</dc:creator>
		<pubDate>Sun, 08 Nov 2009 10:54:50 +0000</pubDate>
		<guid isPermaLink="false">http://fernandoipar.com/?p=178#comment-109</guid>
		<description>Thanks for this article, it was really helpful! =)</description>
		<content:encoded><![CDATA[<p>Thanks for this article, it was really helpful! =)</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Generating data with dbmonster by Keyword stuffing, AdSense, Search engine optimization, and more. &#124; Internet Marketing Dispatch</title>
		<link>http://fernandoipar.com/2009/08/14/generating-data-with-dbmonster/comment-page-1/#comment-108</link>
		<dc:creator>Keyword stuffing, AdSense, Search engine optimization, and more. &#124; Internet Marketing Dispatch</dc:creator>
		<pubDate>Mon, 26 Oct 2009 10:36:01 +0000</pubDate>
		<guid isPermaLink="false">http://fernandoipar.com/?p=182#comment-108</guid>
		<description>[...] Generating data with dbmonster on Planet MySQL [...]</description>
		<content:encoded><![CDATA[<p>[...] Generating data with dbmonster on Planet MySQL [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Generating data with dbmonster by fernando</title>
		<link>http://fernandoipar.com/2009/08/14/generating-data-with-dbmonster/comment-page-1/#comment-78</link>
		<dc:creator>fernando</dc:creator>
		<pubDate>Tue, 18 Aug 2009 14:03:02 +0000</pubDate>
		<guid isPermaLink="false">http://fernandoipar.com/?p=182#comment-78</guid>
		<description>Indeed, I ran another test and it works exactly as described: 

mysql -e &#039;create database rtest&#039; 
[... create some inodb tables on rtest, with foreign key constraints ... ]

java pl.kernelpanic.dbmonster.Launcher -c rtest.properties --grab &gt; rtest.xml

After properly editing the begining of the rtest.xml file (since it will included some non-xml output from dbmonster): 

java pl.kernelpanic.dbmonster.Launcher -c rtest.properties -s rtest.xml

This successfully generates rows for all tables, satisfying referential integrity :)</description>
		<content:encoded><![CDATA[<p>Indeed, I ran another test and it works exactly as described: </p>
<p>mysql -e &#8216;create database rtest&#8217;<br />
[... create some inodb tables on rtest, with foreign key constraints ... ]</p>
<p>java pl.kernelpanic.dbmonster.Launcher -c rtest.properties &#8211;grab &gt; rtest.xml</p>
<p>After properly editing the begining of the rtest.xml file (since it will included some non-xml output from dbmonster): </p>
<p>java pl.kernelpanic.dbmonster.Launcher -c rtest.properties -s rtest.xml</p>
<p>This successfully generates rows for all tables, satisfying referential integrity <img src='http://fernandoipar.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on iptables trick to limit concurrent tcp connections by fernando</title>
		<link>http://fernandoipar.com/2009/06/17/iptables-trick-to-limit-concurrent-tcp-connections/comment-page-1/#comment-77</link>
		<dc:creator>fernando</dc:creator>
		<pubDate>Tue, 18 Aug 2009 13:21:15 +0000</pubDate>
		<guid isPermaLink="false">http://fernandoipar.com/?p=173#comment-77</guid>
		<description>Glad you found it useful!

This might be of interest to you too: http://www.cohprog.com/mod_bandwidth.html, though I don&#039;t know if it&#039;s still active, or if it works across apache v 1.x and 2.x. 

The good side of the iptables approach is that it can be used to limit concurrent connections to any network based service

Good luck,</description>
		<content:encoded><![CDATA[<p>Glad you found it useful!</p>
<p>This might be of interest to you too: <a href="http://www.cohprog.com/mod_bandwidth.html" rel="nofollow">http://www.cohprog.com/mod_bandwidth.html</a>, though I don&#8217;t know if it&#8217;s still active, or if it works across apache v 1.x and 2.x. </p>
<p>The good side of the iptables approach is that it can be used to limit concurrent connections to any network based service</p>
<p>Good luck,</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on iptables trick to limit concurrent tcp connections by Edward Hall</title>
		<link>http://fernandoipar.com/2009/06/17/iptables-trick-to-limit-concurrent-tcp-connections/comment-page-1/#comment-76</link>
		<dc:creator>Edward Hall</dc:creator>
		<pubDate>Tue, 18 Aug 2009 13:01:25 +0000</pubDate>
		<guid isPermaLink="false">http://fernandoipar.com/?p=173#comment-76</guid>
		<description>Very Nice!

I have been trying to find a way to prevent Apache from spawning too many child processes whenever some bad robot or hacker throws a bunch of concurrent requests at our website.

This may just do the trick...</description>
		<content:encoded><![CDATA[<p>Very Nice!</p>
<p>I have been trying to find a way to prevent Apache from spawning too many child processes whenever some bad robot or hacker throws a bunch of concurrent requests at our website.</p>
<p>This may just do the trick&#8230;</p>
]]></content:encoded>
	</item>
</channel>
</rss>
