On Dec 11, 2007 2:17 PM, mike <[EMAIL PROTECTED]> wrote: > Does this -use- memcached, or is it basically a copy of memcached that > has been modified to fit a job queue type model? > > Does it use memcached libraries, or is it totally independent?
Beanstalkd neither uses memcached, nor is it a copy of memcached. It is an independent project that has taken inspiration from the design of the memcache protocol. The implementation is completely new. > I think it's a neat idea, however, for a work queue, I would think > that it would be important to have guarantees (unless it guarantees it > by processing it until it's done) > > memcached is volatile and can be empty or unavailable at any time, and > the application should be able to function without it. Does this job > queueing system function the same way? Since it is designed > specifically with that purpose in mind it would not make sense to make > a second job queue system (like the difference of using memcached as a > CACHE vs. a DATA STORE) ... > > I hope this makes sense. Yes, absolutely. Beanstalk intends to provide reasonable guarantees, but this first release is in-memory only for the sake of simplicity. We just wanted to get the code out in public! Right now, if power goes out on a beanstalkd box, you will lose all the jobs that were on that box. We're planning to add persistence to beanstalk to make recovery possible in such a situation. However, in practice, the queue is usually empty -- jobs run almost immediately after they were submitted, so the chance of losing important work is lower than you might expect. kr
