用redis实现队列
moonqueue的Python项目详细描述
兼职
moonqueue是另一个使用redis作为存储的队列库。
如何安装
pip install moonqueue
如何使用
重新排队列表-一个队列
>>>frommoonqueueimportRedisQueueList>>>r=RedisQueueList('list:myqueue')# push one message>>>r.push(['apple'])(('list:myqueue',1),)>>>r.pop()('list:myqueue',b'apple')# push multiple messages>>>r.push(['apple','banana'])(('list:myqueue',2),)>>>r.pop()('list:myqueue',b'apple')>>>r.pop()('list:myqueue',b'banana')>>>r.pop()Traceback(mostrecentcalllast):File"<stdin>",line1,in<module>File"/home/web/moonqueue/moonqueue/redis_queue_list.py",line52,inpopraiseEmptyQueueException(excep_msg)moonqueue.excep.EmptyQueueException:list:myqueueisempty
重新排队列表-两个队列
>>>frommoonqueueimportRedisQueueList>>>r=RedisQueueList(['list:myqueue1','list:myqueue2'])>>>r.get_queues()['list:myqueue1','list:myqueue2']# push one message - it will be pused to all queues>>>r.push(['apple'])(('list:myqueue1',1),('list:myqueue2',1))# pop from queues>>>r.pop()('list:myqueue1',b'apple')>>>r.pop()('list:myqueue2',b'apple')>>>r.pop()Traceback(mostrecentcalllast):File"<stdin>",line1,in<module>File"/home/web/moonqueue/moonqueue/redis_queue_list.py",line52,inpopraiseEmptyQueueException(excep_msg)moonqueue.excep.EmptyQueueException:['list:myqueue1','list:myqueue2']isempty