Producer در RabbitMQ برنامهای است که پیامها را تولید کرده و به صفها یا Exchangeها ارسال میکند. در این بخش، یک نمونه Producer ساده با استفاده از کتابخانه pika در Python ایجاد میکنیم.
نمونه کد Producer
import pika
# اتصال به RabbitMQ
connection = pika.BlockingConnection(pika.ConnectionParameters('localhost'))
channel = connection.channel()
# ایجاد صف در صورت عدم وجود
channel.queue_declare(queue='hello')
# ارسال پیام به صف
channel.basic_publish(exchange='',
routing_key='hello',
body='سلام از Python!')
print("پیام ارسال شد")
# بستن اتصال
connection.close()
توضیح کد
- اتصال به RabbitMQ: با استفاده از
BlockingConnectionبه سرور محلی متصل میشویم. - ایجاد صف: با
queue_declareصف'hello'ساخته میشود اگر قبلاً وجود نداشته باشد. - ارسال پیام: پیام با استفاده از
basic_publishبه صف ارسال میشود. در این مثال ازexchange=''استفاده شده که به صف مستقیم اشاره دارد. - بستن اتصال: پس از ارسال پیام، اتصال به سرور بسته میشود.
جمعبندی
با چند خط کد ساده میتوان یک Producer ایجاد کرد که پیامها را به RabbitMQ ارسال میکند. این کد پایه برای سناریوهای پیچیدهتر مانند استفاده از Exchangeها و Routing Keyها است و میتواند به راحتی گسترش یابد.