Queue Implementation with Redis
Project description
moonqueue
MoonQueue is another Queue Library using Redis as storage.
How to Install
pip install moonqueue
How To Use
RedisQueueList - One Queue
>>> from moonqueue import RedisQueueList
>>> 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 (most recent call last):
File "<stdin>", line 1, in <module>
File "/home/web/moonqueue/moonqueue/redis_queue_list.py", line 52, in pop
raise EmptyQueueException(excep_msg)
moonqueue.excep.EmptyQueueException: list:myqueue is empty
RedisQueueList - Two Queues
>>> from moonqueue import RedisQueueList
>>> 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 (most recent call last):
File "<stdin>", line 1, in <module>
File "/home/web/moonqueue/moonqueue/redis_queue_list.py", line 52, in pop
raise EmptyQueueException(excep_msg)
moonqueue.excep.EmptyQueueException: ['list:myqueue1', 'list:myqueue2'] is empty
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
moonqueue-0.3.0.tar.gz
(4.0 kB
view hashes)
Built Distribution
moonqueue-0.3.0-py3-none-any.whl
(17.2 kB
view hashes)
Close
Hashes for moonqueue-0.3.0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | fc84030d85ca62dc7e5e4de76e4aff69bcc0cd7d9d403133d931de2b0c46be6f |
|
MD5 | a8e19e968d66261103e588432eef1354 |
|
BLAKE2b-256 | b3103b4cad9fa4bc8acc09a2317142a9e1def75a34d5e5f828092e4d81da26dd |