发送端:import pika

import sys

connection = pika.BlockingConnection(pika.ConnectionParameters(

host='localhost'))

channel = connection.channel()

channel.exchange_declare(exchange='logs',exchange_type='fanout')

message = ' '.join(sys.argv[1:]) or "info: Hello World!"

channel.basic_publish(exchange='logs',

routing_key='',

body=message)

print(" [x] Sent %r" % message)

connection.close()

接收端:import pika

connection = pika.BlockingConnection(pika.ConnectionParameters(

host='localhost'))

channel = connection.channel()

channel.exchange_declare(exchange='logs',

exchange_type='fanout')

result = channel.queue_declare(exclusive=True)  # 不指定queue名字,rabbit会随机分配一个名字,exclusive=True会在使用此queue的消费者断开后,自动将queue删除

queue_name = result.method.queue

print(queue_name)

channel.queue_bind(exchange='logs',

queue=queue_name)

print(' [*] Waiting for logs. To exit press CTRL+C')

def callback(ch, method, properties, body):

print(" [x] %r" % body)

channel.basic_consume(callback,

queue=queue_name,

no_ack=True)

channel.start_consuming()

exchange不会保存数据,如果没客户端接受,就丢弃,也就是说,客户端会丢失启动前发送端发送的数据。

python消息订阅_python rabbitmq消息发布订阅相关推荐

  1. 消息队列中点对点与发布订阅区别

    背景知识 JMS一个在 Java标准化组织(JCP)内开发的标准(代号JSR 914).2001年6月25日,Java消息服务发布JMS 1.0.2b,2002年3月18日Java消息服务发布 1.1 ...

  2. 消息队列中点对点与发布订阅区别(good)

    背景知识 JMS一个在 Java标准化组织(JCP)内开发的标准(代号JSR 914).2001年6月25日,Java消息服务发布JMS 1.0.2b,2002年3月18日Java消息服务发布 1.1 ...

  3. redis订阅和发布 消息推送php,redis发布订阅什么用

    Redis 发布订阅(pub/sub)是一种消息通信模式:发送者(pub)发送消息,订阅者(sub)接收消息. Redis 客户端可以订阅任意数量的频道. (推荐学习:Redis视频教程) Redis ...

  4. python消息队列_python之消息队列

    消息持久化 acknowledgment 消息不丢失的方法 生效方法:channel.basic_consume(consumer_callback, queue, no_ack=False, exc ...

  5. RabbitMq之发布订阅模式

    这里写了一个简单的springboot的demo来处理RabbitMq的发布订阅 添加pom依赖 <dependency><groupId>com.rabbitmq</g ...

  6. 消息队列模式(点对点发布订阅)

    Java消息服务(Java Message Service,JMS)应用程序接口是一个Java平台中关于面向消息中间件(MOM)的API,用于在两个应用程序之间,或分布式系统中发送消息,进行异步通信. ...

  7. RabbitMQ 之发布订阅模式

    publish/subscribe 发布订阅模式中,生产者不再直接与队列绑定,而是将数据发送至交换机Exchange 交换机Exchange用于将数据按某种规则送入与之绑定的队列,进而供消费者使用. ...

  8. SpringBoot监听redis订阅监听和发布订阅

    前言 我们可以在redis中发布一条订阅到通道中,所有监听了这个通道的都可以收到这个发布的内容! redis订阅监听配置类 代码如下: RedisListenerConfig.java package ...

  9. redis发布订阅c接口_Redis 发布/订阅机制原理分析

    序:使用订阅发布功能的时候想查一下客户端是如何接收消息的(客户端订阅了频道之后也会注册一个回调函数,服务端publish消息之后回调函数会获取到消息.这块没看到太多内容只有C++的源码),无意中查到这 ...

最新文章

  1. 【深度学习】基于PyTorch的模型训练实用教程之数据处理
  2. Boost:是否支持sse4.1指令的测试程序
  3. hdu 6962 I love tree 线段树维护二次函数
  4. 计算机里的网络是什么意思啊,计算机网络中本地站点是什么意思
  5. ZZULIOJ 1062:最大公约数
  6. Java 多线程(二)—— 线程的同步
  7. 数据库设计优化经验谈(转载)
  8. 河北对口计算机计算机网络,河北对口计算机试题及答案.doc
  9. Linux学习笔记一:vmware安装Ubuntu虚拟机并进行联网设置
  10. P1279 字串距离
  11. matlab中求均值的mean()函数的使用
  12. Linux下原生异步IO接口Libaio的用法
  13. 小学认识计算机评课,小学信息技术评课.doc
  14. 一. Scala安装与环境配置
  15. Tkinter 学习笔记
  16. Oracle数据库(二) 表空间的管理
  17. Hark的数据结构与算法练习之堆排序
  18. JAVA_OPTS设置
  19. 梁漱溟: 思考问题的八层境界
  20. 2013-2014 NBA 东西部决赛 + 总决赛合集

热门文章

  1. android界面实现框架内页面跳转_KVM虚拟化管理平台的实现
  2. Java数组(3)--二维(多维)数组
  3. ajax提交file空指针,excel导入上传文件报空指针错误
  4. NOIP模拟测试20「周·任·飞」
  5. python下载大文件
  6. SecureCRT在卸载时似乎会同时删除系统自带的Consolas字体
  7. 自动计算尺寸列表功能案例ios源码
  8. 摘成功道路上容易被忽视的5项技能
  9. 简单代码生成器原理剖析(一)
  10. 计算机vb操作题评分细则,上机考试的试题及评分标准.doc