|
hello nomli navbat yaratiladi - queue_declare(queue='hello')
|
bet | 4/7 | Sana | 24.05.2024 | Hajmi | 0,83 Mb. | | #252300 |
Bog'liq 1.PYTHON dasturlash tili hello nomli navbat yaratiladi - queue_declare(queue='hello')
Xabar almashinuvi nuqtasi(exchange) orqali navbatga hello(routing_key='hello') xabar yuboriladi -
Server bilan bog'lanish yopiladi - connection.close()
Skriptni ishga tushiramiz
admin@ip-172-31-33-210:~$ ./producer.py
[x] Sent 'Hello World!'
rabbitmqadmin orqali tekshiramiz
root@ip-172-31-33-210:/home/admin# rabbitmqadmin get queue='hello'
+-------------+----------+---------------+--------------+---------------+------------------+------------+-------------+
| routing_key | exchange | message_count | payload | payload_bytes | payload_encoding | properties | redelivered |
+-------------+----------+---------------+--------------+---------------+------------------+------------+-------------+
| hello | | 0 | Hello World! | 12 | string | | False |
+-------------+----------+---------------+--------------+---------------+------------------+------------+-------------+
rabbitmqctl buyrug'i orqali navbatlar ro'yxatini tekshiramiz:
root@ip-172-31-33-210:/home/admin# rabbitmqctl list_queues
Listing queues ...
hello 1
hello navbatida 1 dona xabar mavjud. Uni qabul qilamiz.
Navbatdan xabarni o'qib olamiz:
Ikkinchi skript consumer.py - navbatdan xabarni qabul qiladi va uni ekranga chiqaradi:
#!/usr/bin/env python
import pika
connection = pika.BlockingConnection(pika.ConnectionParameters('localhost'))
channel = connection.channel()
channel.queue_declare(queue='hello')
def callback(ch, method, properties, body):
print(" [x] Received %r" % body)
channel.basic_consume(callback,
queue='hello',
no_ack=True)
print(' [*] Waiting for messages. To exit press CTRL+C')
channel.start_consuming()
Bu yerda quyidagilar bajariladi:
Birinchi skript kabi rabbitmq bilan bog'lanamiz;
Agar hello nomli navbat bo'lmasa, u yaratilinadi;
|
| |