RabbitMQie消息列队整理

Posted fgxwan

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了RabbitMQie消息列队整理相关的知识,希望对你有一定的参考价值。

使用方法过程,这儿只做了windows平台教程  

先安装Erlang 编程软件,然后设置环境变量,在安装RabbimMQ  ,这儿我下载了一个版本不行,后来换了最新片就好了,以后在使用过程 中如果有问题 ,可以换版本试一下,这是个坑。。然后 pip install pipk   

在编程器中粘上下代码测试  先是服务端:

技术分享图片
import pika

#连接队列服务器
connection = pika.BlockingConnection(pika.ConnectionParameters(host=localhost))
channel = connection.channel()

#创建队列。有就不管,没有就自动创建
channel.queue_declare(queue=hello)

#使用默认的交换机发送消息。exchange为空就使用默认的
channel.basic_publish(exchange=‘‘,
                      routing_key=hello,
                      body=Hello 201!)
print(" [x] Sent ‘Hello World!‘")
connection.close()
View Code

在另一个文件粘上客服端:

 

技术分享图片
import pika
import time

# 连接服务器
connection = pika.BlockingConnection(pika.ConnectionParameters(host=localhost))
channel = connection.channel()

# rabbitmq消费端仍然使用此方法创建队列。这样做的意思是:若是没有就创建。和发送端道理道理。目的是为了保证队列一定会有
channel.queue_declare(queue=hello)


# 收到消息后的回调
def callback(ch, method, properties, body):
    print("我收到了,正在等。。")
    time.sleep(10)
    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()
View Code
------------------------------------------------------------------------------
以下是注释:
channel.basic_consume(callback,
queue=‘hello‘,
#no_ack=True 如果取消注释就会不等反应,如果客
#服端开闭,没有外理的消息会丢失
)
在安装rabbitmq文件夹下有个叫rebbitmqctl的命令可以管里查看消息队列
技术分享图片










以上是关于RabbitMQie消息列队整理的主要内容,如果未能解决你的问题,请参考以下文章

消息列队基础

redis做消息列队

千万PV 网站架构之 RabbitMQ 消息列队

消息列队组件的一些特性比较

php简单实现rabbitMQ消息列队(必须收藏)

虚拟机VMware Workstation环境下,添加或删除windows组建,找不到“消息列队”。这是怎么回事???