Redis is one of a few up-and-coming persistent, non-relational data stores. Although similar to memcached in API, it goes further than memcachedb by extending the command set in addition to persisting the data.
The other big name I'm hearing is Tokyo Cabinet, but I haven't had a chance to try it yet.
The current beta release of Redis includes a Python client library. I
had good reference implementations to work from in
django.contrib.sessions.backends and some free time, so I put
together a Redis session backend. It's being used on this site, and
the source is available here. I'd package it,
but my current thinking is that I'm simply not OCD enough to package
things correctly.
Obviously, this is nice as a replacement for memcache sessions since memcached has that little feature of being a cache rather than a store.
P.S. Why didn't anyone point out that I can't spell "disappoint"? Sigh... I've fixed the article, but the URL is forever.
Comments
17 spam comments omitted.
I am no longer accepting new comments.
Eric Florenzano
#19429, 2009-05-06T14:32:13Z
Cool! Persistent key-value stores make much more sense for session backends than a database or memcached. I should point out that I wrote a similar thing, but using Tokyo Tyrant, a few months back: http://github.com/ericflo/django-tokyo-sessions/tree/master
lamby
#19440, 2009-05-06T15:43:52Z
If you're into this sort of thing, you might want to check out http://chris-lamb.co.uk/projects/swordfish/ - it's (currently) backed onto Tokyo Cabinet and integrates well into Django projects without being coupled to it.