From: Jamie M. <ja...@mc...> - 2005-01-15 22:42:29
|
sh...@lo... (Shane) writes: > For those of you running memcached w/ slash... >=20 > What OS/kernel are you running it on? It doesn't matter that much. On Linux 2.6.x, you get EPOLL support built-in which is nice. But in recent months the formerly buggy and slow POLL support for 2.4.x has been made a lot faster and more solid. We're actually using a stock 2.4.x kernel with plain old POLL, on Slashdot, and it's been working fine: [jamie@slashdot-http-1 jamie]$ EVENT_SHOW_METHOD=3D1 memcached -p 12345 memcached: epoll_create: Function not implemented libevent using: poll If you don't know what that's talking about, here's a quick overly-cautious warning I found from 2003: <http://lists.danga.com/pipermail/memcached/2003-October/000299.html> "its performance will be abysmal" -- not true anymore Slashdot is using an older version of libevent http://www.monkey.org/~provos/libevent/ but, again, it's working fine. We'll probably upgrade to 1.0 at some point. > Does it have it's own dedicated hardware, or are you using "extra > ram" in existing machines? Memcached is designed for use with "extra ram." The balance between CPU, I/O and RAM is never perfect, so there are pretty much guaranteed to be some machines on your system that have RAM they don't really need. On Slashdot, our webheads are CPU bound and have tons of free RAM; we have a quarter-gig of memcached cache on each of ~15 webheads. If you _really_ start taxing memcached, it will start to chew up a lot of RAM. But you won't, on Slash, until you hit 100 pages/sec at least. When Slashdot is doing 100 pps, we see maybe 3-5% CPU used by memcached on each webhead. > How many machines are typically in your memcached pool? Doesn't much affect performance unless/until CPU is your memcached bottleneck, which is (see above) highly unlikely. > What version of Slashcode are you using memcached with, and what > version of memcached? Support for memcached in Slash has grown slowly since late 2003, so almost any version from 2004-05 will be about the same. And memcached has basically been bugfixes since 1.0.8 IIRC, just use the latest version. > I've started reading the memcached-listservs and poking around > with building the src. I Ran into some problems trying to get it > running on a Redhat9 (I know, old, old, old) machine. I haven't > put much more effort then that into it. Really? The EPOLL kernel patch is the only tricky thing. By now, libevent should be a straightforward install, and after that memcached should be too. In Debian unstable it's "apt-get install memcached"! > If anyone's written docs or a primer or a how-to for memcached > and slashcode, please lemme know. It's not complicated enough for a howto. Here's the howto: Install libevent, install memcached, set a unique memcached_keyprefix var for each of your Slash sites, set the var memcached to 1, and restart slashd and apache. Watch your DB utilization go down by a third :) --=20 Jamie McCarthy http://mccarthy.vg/ ja...@mc... |