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的命令可以管里查看消息队列


猜你喜欢

转载自www.cnblogs.com/fgxwan/p/9661371.html