兔子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教程信息图

© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END