A distributed queue library layered over kombu
Project description
QueueUp - A simple and easy queue interface for all of your needs
QueueUp -- Is an entirely integrated queue interface over kombu to completely include all settings inside of a single object.
The reason we use kombu
and AMQP as a whole is to allow for complex objects and delivery guaruntees we normally wouldn't get with much newer platforms.
Differences from QueueUp and Queue
You'd use the QueueUp
library in the exact way you'd use the queue.Queue
library. Let's look at the difference.
An example for python's queue
import time
import random
import threading
from queue import Queue
# We're starting two threading daemons,
# 1. one that pushes information into a queue,
# 2. the other that reads information from the queue then publishes it
def queue_pusher(q):
while True:
q.put(random.randint(0, 1000))
time.sleep(0.05)
def queue_reciever(q):
while True:
qitem = q.get(block=True)
print(f"Printing {item}")
time.sleep(0.05)
if __name__ == "__main__":
common_queue = Queue()
threading.Thread(target=queue_pusher, daemon=True, args=(common_queue,)).start()
threading.Thread(target=queue_reciever, daemon=True, args=(common_queue,)).start()
# Now the two queues will communicate with each other.
while True:
time.sleep(5)
An example for QueueUp
import time
import random
import threading
from queueup import Queue
# We're starting two threading daemons,
# 1. one that pushes information into a queue,
# 2. the other that reads information from the queue then publishes it
def queue_pusher(q):
while True:
q.put(random.randint(0, 1000))
time.sleep(0.05)
def queue_reciever(q):
while True:
qitem = q.get(block=True)
print(f"Printing {item}")
time.sleep(0.05)
if __name__ == "__main__":
common_queue = Queue() # w/o parameters it returns a multiprocessing.Queue()
threading.Thread(target=queue_pusher, daemon=True, args=(common_queue,)).start()
threading.Thread(target=queue_reciever, daemon=True, args=(common_queue,)).start()
# Now the two queues will communicate with each other.
while True:
time.sleep(5)
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
queueup-0.1.tar.gz
(3.2 kB
view details)
Built Distribution
queueup-0.1-py3-none-any.whl
(2.9 kB
view details)
File details
Details for the file queueup-0.1.tar.gz
.
File metadata
- Download URL: queueup-0.1.tar.gz
- Upload date:
- Size: 3.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.11.0 pkginfo/1.4.2 requests/2.20.1 setuptools/40.4.3 requests-toolbelt/0.8.0 tqdm/4.25.0 CPython/3.6.8
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 3222dfdff4accefb13e5a333449fa51e96740f1896f57aaa73587f0d79cc6290 |
|
MD5 | 1cc0e40443de1ab07ec3f890d28dffa9 |
|
BLAKE2b-256 | f62117da90b00d9083e6ba969d395369fc5123e7c3d4f46748cf0d5e9a8df253 |
File details
Details for the file queueup-0.1-py3-none-any.whl
.
File metadata
- Download URL: queueup-0.1-py3-none-any.whl
- Upload date:
- Size: 2.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.11.0 pkginfo/1.4.2 requests/2.20.1 setuptools/40.4.3 requests-toolbelt/0.8.0 tqdm/4.25.0 CPython/3.6.8
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 10c6c557eb5682ba5e4c2f9faacfbbce69fff147d0a043de6727b3c7019dfb51 |
|
MD5 | cf7d1c3a49522b7c779d4264d737ed69 |
|
BLAKE2b-256 | a472b5e848e709289ce50177380030531b2854253f3848ba8ae24b6a489a939f |