> So, I would like to as, it it would be possible to add (internal)
> compression mechanism to the memcached daemon. I was thinking about a
> switch which would switch the compression on/off (and/or setting the
> level) during memcached start. The data would be compressed
> transparently, so no interface/protocol change will occur in fact (it
> would only use less memory).

The *most* efficient thing for you to do is to use client compression, to
be honest. I know it'll be annoying for you but that reduces bandwidth and
doesn't centralize all the compression/decompression CPU into the server.

*but*, if you want to go the server route, it'd probably be easiest for
you to take the engine-pu branch (the 1.6 tree) and write a storage engine
that compresses its values. Then you don't have to mess with it as much.

Since I've been messing with the locks in the 1.4 tree, that code now has
the potential do things like compression/decompression outside of any
locks. Which means you could have memcached potentially use all cores in a
box while doing server side compression.

Those changes haven't been ported forward, but in all likelyhood the
performance of the current 1.6 tree is more than you need already. Give it
a look?

Reply via email to