The double-ended queue in Python (collections.deque) uses
append/popleft (or pop(0) ) so as to be a mostly drop-in replacement
for lists. It also doesn't do blocking gets/puts. Going with put/get
is still probably a better idea.
Two questions:
1. Why use what you have written vs. using Redis lists directly?
2. Why use what you have written vs. using celery + carrot + ghettoq:
http://ask.github.com/celery/tutorials/otherqueues.html ?
If your queue can offer optional message acking with timeouts, then
your queue library could go head-to-head with systems like Amazon's
Simple Message Queue, RabbitMQ, ActiveMQ, 0MQ, etc. (of course in such
a situation, the library itself would be providing all of the brains,
vs. the server in these other systems, but your library could pull 95%
of the brains into a daemon, with the 5% being implemented for
multiple languages/runtimes easily). If you are not looking to be a
replacement for these systems, then don't worry. :)
Regards,
- Josiah
> --
> You received this message because you are subscribed to the Google Groups "Redis DB" group.
> To post to this group, send email to redi...@googlegroups.com.
> To unsubscribe from this group, send email to redis-db+u...@googlegroups.com.
> For more options, visit this group at http://groups.google.com/group/redis-db?hl=en.
>
>
I'm a fan of concise libraries with only the features you need. We'd
also used RabbitMQ in the past, and actually ran into catastrophic
crash bugs with it (the same ones that Reddit ran into, incidentally).
If you're happy with what it does, then I would encourage you to
ignore my previous suggestions. :)
- Josiah