zoukankan      html  css  js  c++  java
  • RabbitMQ消息队列(一): 简单队列

    1. 示例选用python的pika模块进行测试,需要预先安装pika模块;

    https://pypi.python.org/pypi/pika/0.10.0#downloads

    上述地址下载源码,加压,执行如下命令安装:

    python setup.py build
    
    python setup.py install

    2. 简单队列模型中包含一个生产者,一个消息队列,一个消费者,使用默认交换;

    3. 测试代码:

    send.py--生产者,负责发送消息

     1 #!/usr/bin/env python
     2 import pika
     3 
     4 connection = pika.BlockingConnection(pika.ConnectionParameters(
     5         host='localhost'))
     6 channel = connection.channel()
     7 
     8 channel.queue_declare(queue='hello')
     9 
    10 channel.basic_publish(exchange='',
    11                       routing_key='hello',
    12                       body='Hello World!')
    13 print(" [x] Sent 'Hello World!'")
    14 connection.close()

    reveiver.py--消费者,负责接收消息

     1 #!/usr/bin/env python
     2 import pika
     3 
     4 connection = pika.BlockingConnection(pika.ConnectionParameters(
     5         host='localhost'))
     6 channel = connection.channel()
     7 
     8 channel.queue_declare(queue='hello')
     9 
    10 def callback(ch, method, properties, body):
    11     print(" [x] Received %r" % body)
    12 
    13 channel.basic_consume(callback,
    14                       queue='hello',
    15                       no_ack=True)
    16 
    17 print(' [*] Waiting for messages. To exit press CTRL+C')
    18 channel.start_consuming()

    上述例子中,send.py只执行一次,发送一条消息,receiver.py循环接收消息,直到发送命令结束接收;

    发送消息:

    python send.py

    接收消息:

    python receive.py
     [*] Waiting for messages. To exit press CTRL+C
     [x] Received 'Hello World!'
     [x] Received 'Hello World!'
  • 相关阅读:
    hdu 4474 转化为bfs + 一个巧妙的剪枝~
    数据结构几类排序的总结和完整代码 待续。。
    poj 2135 Farm Tour
    hdu 4374 (单调队列+dp)
    poj2391 Ombrophobic Bovines 拆点连边要注意
    hdu3507
    hdu1506
    poj2175
    poj3308
    poj3155 Hard Life
  • 原文地址:https://www.cnblogs.com/wanpengcoder/p/5287692.html
Copyright © 2011-2022 走看看