RabbitMQ教程

兔子MQ 是一个消息代理,用作不同实体的公共通道。兔子的主要目的 是群集和高可用性。消息生产者 实体将消息放入RABBITMQ 然后消费者根据工作计划得到。如果一些生产商或消费者失败了,剩下的仍然有效。先进的消息队列协议(AMQP)是实现的主要标准 作者:拉比。

null

RABBITMQ通过确认和发布者确认为应用程序提供可靠性。消息可以根据给定的逻辑绑定到不同的实体。几个 RABBITMQ服务器可以集群化,从而实现高可用性。 RABBITMQ可以联合多个不同的应用程序,使之变得简单。这里可以给出更多的例子,但这些已经足够了。

安装RabbitMQ

安装 兔兔到软呢帽

$ yum install rabbitmq-server.noarch

为RabbitMQ安装Python库

在本教程中,我们将使用 python语言 . 但是我们需要一个支持AMQP的库。我们选择使用pika,因此使用以下命令安装它

$ yum install python-pika.noarch

我们需要首先检查rabbitmq服务器的状态。在这里,我们得到它没有启动,我们启动它的默认配置

启动RabbitMQ服务器守护程序

[[email protected] ismail]# systemctl start rabbitmq-server[[email protected] ismail]# systemctl status rabbitmq-serverrabbitmq-server.service - RabbitMQ brokerLoaded: loaded (/usr/lib/systemd/system/rabbitmq-server.service; disabled)Active: active (running) since Sat 2014-11-22 04:25:40 EET; 1s agoMain PID: 9179 (beam.smp)...

创建生产者

我们将编写一些producer来创建消息到htrabbitmq服务器。我们将以下代码放入 p1.py公司

import pikaconnection = pika.BlockingConnection(pika.ConnectionParameters(host='localhost'))channel = connection.channel()channel.queue_declare(queue='Selam')channel.basic_publish(exchange='',routing_key='hello',body='Selam Naber')print " [x] Sent 'Selam Naber'"connection.close()

现在运行producer并将消息发送到队列。

$ python p1.py[x] Sent 'Selam Naber'

创建使用者

这是在运行消息之后等待的消费者。使用者的文件名为 c1.py型

#!/usr/bin/env pythonimport pikaconnection = pika.BlockingConnection(pika.ConnectionParameters(host='localhost'))channel = connection.channel()channel.queue_declare(queue='hello')print ' [*] Waiting for messages. To exit press CTRL+C'def callback(ch, method, properties, body):print " [x] Received %r" % (body,)channel.basic_consume(callback,queue='hello',no_ack=True)channel.start_consuming()

开始使用消息

如果我们运行producer,就会得到消息

$ python c1.py[*] Waiting for messages. To exit press CTRL+C[x] Received 'Selam Naber'

相关文章: 不带行号的Linux打印历史记录命令

RabbitMQ教程信息图

RabbitMQ Tutorial Infographic
RabbitMQ教程信息图

© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享