<br>I rolled out memcached and the PECL client to our side over the past six weeks. We initially were running memcached server on the Linux 2.4 kernel We were seeing as much as 70% CPU utilization (mostly in the kernel) with 2000 connections and about 6000 reads / second. We switched to the
2.6 kernel and our CPU utilization dropped to 20% at the same peak load (with little kernel time). We are running a 1 CPU Xeon box dedicated to memcache.<br><br>Highly recommend checking that you have the Linux 2.6 kernel installed (if you are running Linux). I know we don't quite have the same scale as you, but everything I've read suggests that if you use Epoll then you will be able to handle large number of persistent connections.
<br><br>Chris<br><br><br><br><br><div><span class="gmail_quote">On 3/10/06, <b class="gmail_sendername">Brian Moon</b> <<a href="mailto:brianm@dealnews.com">brianm@dealnews.com</a>> wrote:</span><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
> Are there any plans for the PECL memcached client to pool the persistent<br>> connections on the server in a more efficient manner?<br><br>Each Apache process will have to have its own persistent connection.<br>The only other option I could think of would be to have a daemon on the
<br>localhost that acted as a proxy. I don't know of such a thing at this time.<br><br>> Also, has anybody else noticed just how slow unserialize() is in PHP?<br><br>Its not super fast, but its not much slower than creating the data every
<br>time in code. At least, not when I last tested it.<br><br>> Is there any way for the memcached PECL client to be extended to accept<br>> arrays/objects and do this faster<br><br>To store an array or object, you have to make it a string or binary data
<br>somehow. The only way to do that in PHP is serialize.<br><br>Brian Moon<br><a href="http://dealnews.com">dealnews.com</a><br></blockquote></div><br>