Do you have a need for asynchronous work queues? Need in memory storage that writes cache to disk? You might want to check out Redis. Redis is an advanced key-value store. It is similar to memcached but the dataset is not volatile, and values can be strings, exactly like in memcached, but also lists, sets, and ordered sets. All these data types can be manipulated with atomic operations to push/pop elements, add/remove elements, perform server side union, intersection, difference between sets, and so forth.
We have been using Redis quite a bit lately especially for iphone applications using Ruby on Rails backend systems. It allows for greater scalability and better management for jobbing various processes. Chris Wanstrath has put together a great redis backed library called resque. He lays out our position pretty much spot on. If you need a background job system do yourself a favor and check out Redis and Resque.