首页 > 编程语言 > 详细

利用python pika库实现rabbitmq客户端

时间:2019-10-29 20:33:52      阅读:122      评论:0      收藏:0      [点我收藏+]
  • pika 实现consumer
import functools
import logging
import pika

LOG_FORMAT = (%(levelname) -10s %(asctime)s %(name) -30s %(funcName) 
              -35s %(lineno) -5d: %(message)s)
LOGGER = logging.getLogger(__name__)

#logging.basicConfig(level=logging.DEBUG, format=LOG_FORMAT)


def on_message(chan, method_frame, _header_frame, body, userdata=None):
    """Called when a message is received. Log message and ack it."""
    LOGGER.info(Userdata: %s Message body: %s, userdata, body)
    chan.basic_ack(delivery_tag=method_frame.delivery_tag)
    print("tmd")
    print(body.decode(utf-8))

def main():
    """Main method."""
    credentials = pika.PlainCredentials(guest, guest)
    parameters = pika.ConnectionParameters(127.0.0.1, credentials=credentials)
    connection = pika.BlockingConnection(parameters)

    channel = connection.channel()
    channel.exchange_declare(
        exchange=ex_cpc,
        exchange_type=direct,
        passive=False,
        durable=True,
        auto_delete=False)
    channel.queue_declare(queue=standard, auto_delete=True)
    channel.queue_bind(
        queue=q_cpc, exchange=ex_cpc, routing_key=url_cpc)
    channel.basic_qos(prefetch_count=1)

    on_message_callback = functools.partial(
        on_message, userdata=on_message_userdata)
    channel.basic_consume(q_cpc, on_message_callback)
    print("nmd")
    try:
        channel.start_consuming()
    except KeyboardInterrupt:
        channel.stop_consuming()

    connection.close()


if __name__ == __main__:
    main()

 

利用python pika库实现rabbitmq客户端

原文:https://www.cnblogs.com/saintdingspage/p/11760950.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!