You can download this code by clicking the button below.
This code is now available for download.
This code defines a function to randomly generate messages and consume them from a RabbitMQ message queue. It first declares an exchange and a queue, then generates a random message and publishes it to the queue, and finally consumes messages from the queue and prints them out.
Technology Stack : This code uses the 'random' and 'kombu' packages. 'random' is used for generating random numbers, and 'kombu' is used for interacting with RabbitMQ message queue.
Code Type : Function
Code Difficulty :
def random_queue_message_dequeue(queue_name):
from random import randint
from kombu import Connection, Exchange, Queue, Producer, Consumer
def generate_random_message():
return f"Message {randint(1, 100)}"
def create_queue_connection():
with Connection('amqp://guest:guest@localhost//') as conn:
return conn
def declare_queue(conn):
exchange = Exchange(queue_name, type='direct')
queue = Queue(queue_name, exchange, routing_key=queue_name)
conn.channel().declare_exchange(exchange)
conn.channel().declare_queue(queue)
return queue
def enqueue_message(queue):
with Producer(conn) as producer:
producer.publish(generate_random_message(), exchange=queue.exchange, routing_key=queue.name)
def dequeue_message(queue):
with Consumer(conn, queue=queue) as consumer:
for message in consumer:
print(f"Dequeued message: {message.body.decode()}")
message.ack()
queue = declare_queue(create_queue_connection())
enqueue_message(queue)
dequeue_message(queue)