位置: 编程技术 - 正文

Python操作RabbitMQ服务器实现消息队列的路由功能(python操作mongodb数据库)

编辑:rootadmin

推荐整理分享Python操作RabbitMQ服务器实现消息队列的路由功能(python操作mongodb数据库),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:python操作符的优先级,python操作符的优先级,python操作微信自动发消息,python操作网页界面,python操作网页界面,python操作微信自动发消息,python操作网页界面,python操作doc文件,内容如对您有帮助,希望把文章链接给更多的朋友!

Python使用Pika库(安装:sudo pip install pika)可以操作RabbitMQ消息队列服务器(安装:sudo apt-get install rabbitmq-server),这里我们来看一下MQ相关的路由功能。

路由键的实现

比如有一个需要给所有接收端发送消息的场景,但是如果需要自由定制,有的消息发给其中一些接收端,有些消息发送给另外一些接收端,要怎么办呢?这种情况下就要用到路由键了。

路由键的工作原理:每个接收端的消息队列在绑定交换机的时候,可以设定相应的路由键。发送端通过交换机发送信息时,可以指明路由键 ,交换机会根据路由键把消息发送到相应的消息队列,这样接收端就能接收到消息了。

这边继上一篇,还是用send.py和receive.py来模拟实现路由键的功能。send.py表示发送端,receive.py表示接收端。实例的功能就是将info、warning、error三种级别的信息发送到不同的接收端。

send.py代码分析

receive.py代码分析

打开两个终端,一个运行代码python receive.py info warning,表示只接收info和warning的消息。另外一个终端运行send.py,可以观察到接收终端只接收到了info和warning的消息。如果打开多个终端运行receive.py,并传入不同的路由键参数,可以看到更明显的效果。

当接收端正在运行时,可以使用rabbitmqctl list_bindings来查看绑定情况。

Python操作RabbitMQ服务器实现消息队列的路由功能(python操作mongodb数据库)

路由键模糊匹配路由键模糊匹配,就是可以使用正则表达式,和常用的正则表示式不同,这里的话“#”表示所有、全部的意思;“*”只匹配到一个词。看完示例就能明白了。

这边继上面的例子,还是用send.py和receive.py来实现路由键模糊匹配的功能。send.py表示发送端,receive.py表示接收端。实例的功能大概是这样:比如你有个知心好朋友,不管开心、伤心、工作上的还是生活上的事情都可以和她说;还有一些朋友可以分享开心的事情;还有一些朋友,你可以把不开心的事情和她说。

send.py代码分析

因为要进行路由键模糊匹配,所以交换机的类型要设置为topic,设置为topic,就可以使用#,*的匹配符号了。

上例中定义了四种类型的消息,容易理解,就不解释了,然后依次发送出去。

receive.py代码分析

同样,交换机的类型要设定为topic就可以了。从命令行接收参数的功能稍微调整了一下,就是没有参数时报错退出。

打开四个终端,一个运行如下,表示任何事情都可以和她说:

另外一个终端 运行如下,表示可以和她分享开心的事:

第三个运行如下,表示工作上的事情可以和她分享:

最后一个运行python send.py。结果不难想象出来,就不贴出来了。

详解Python操作RabbitMQ服务器消息队列的远程结果返回 先说一下笔者这里的测试环境:Ubuntu.+Python2.7.4RabbitMQ服务器sudoapt-getinstallrabbitmq-serverPython使用RabbitMQ需要Pika库sudopipinstallpika远程结果返回消息发送端

浅谈python中set使用 浅谈python中set使用In[2]:a=set()#常用操作1In[3]:aOut[3]:set()In[4]:type(a)Out[4]:setIn[5]:b=set([1,3])In[6]:bOut[6]:{1,3}In[7]:type(b)Out[7]:setIn[8]:b.update(2)------------------------------

python中set常用操作汇总 sets支持xinset,len(set),和forxinset。作为一个无序的集合,sets不记录元素位置或者插入点。因此,sets不支持indexing,slicing,或其它类序列(sequence-like)的操作

标签: python操作mongodb数据库

本文链接地址:https://www.jiuchutong.com/biancheng/386984.html 转载请保留说明!

上一篇:Python通过RabbitMQ服务器实现交换机功能的实例教程(Python通过行和列提取数据)

下一篇:详解Python操作RabbitMQ服务器消息队列的远程结果返回(python操作命令)

  • 应交税费明细科目怎么记账
  • 以前年度所得税退税会计分录
  • 票据承兑和贴现市场上最主要的交易对象是( )
  • 金税开票系统怎么导出发票明细
  • 停车费定额发票税率
  • 怎么在网上申请电话卡
  • 当期处置子公司,当期还纳入合报范围嘛
  • 原始凭证的主要类型
  • 零税率的发票
  • 商业承兑汇票托收凭证怎么做分录
  • 冬虫夏草开票什么税率
  • 去税务局交的社保能退么
  • 营改增后房产税计税依据 土地价款
  • 财政拨款申请格式怎么写
  • 个体工商户投资者减除费用
  • 异地业务操作
  • 加油的普票可以抵扣进项税吗
  • 初级备考计划表
  • 发生的业务招待费属于什么科目
  • 速冻食品增值税税率
  • 非居民企业怎么算企业所得税
  • 会计制度备案成本核算方法一般选择哪个
  • 预收的购货款属于收入吗
  • 石榴石的功效与作用价值
  • typora如何设置字体颜色
  • 苏格兰高地牛一个萌萌哒的合集
  • 海关进口增值税怎么认证抵扣
  • citespace关键词共现分析
  • thinkphp cli
  • vue中v-model
  • 农业公司经营项目有哪些?
  • 月底结转汇兑损益
  • 其他应付款清账
  • typescript4.1
  • d3.js下载
  • vue3+antd
  • css3题目
  • 手撕代码是啥意思
  • python打开文本文档中文读不出来
  • python中如何获取列表中的元素
  • 上个月的留底税这个使用,会计分录
  • 免收印花税
  • 职工食堂的费用怎么入账
  • 个体户单位性质代码
  • mysql 自动断开
  • 鸡蛋的发票
  • 企业所得税几种税率
  • 门诊报销是怎么报的
  • 存货跌价准备的账务处理
  • 公司对于子公司的股权投资
  • 固定资产计提完折旧残值怎么处理
  • 筹建期发生的费用怎么申报
  • 小微企业营业外收入二级科目怎么
  • 未开票收入账务处理分录
  • 律师费能计入办公费吗合法吗
  • 不动产经营租赁会计分录
  • 有契税发票没有增值税发票
  • 记帐凭证的填制方法
  • 收到委托加工物资发票
  • 库存现金过多的隐患
  • 工业企业生产什么
  • mysql57安装过程怎样选安装目录
  • win10文字模糊怎么调整
  • 虚拟机打开提示物理内存不足
  • win7的查看方式
  • memory在电脑里是什么意思
  • win8双系统怎么切换
  • linux 用户进程
  • ubuntu操作
  • win10系统桌面图标有白色方框的解决方法图...
  • unity3D游戏开发
  • scrollview不滚动
  • js插件大全
  • JavaScript中setMonth()方法的使用详解
  • Caused by: android.content.ActivityNotFoundException: No Activity found to handle Intent错误的记录。
  • aiclod
  • 四川税务局发票下载
  • 2020宜兴市民中心营业时间
  • 2023年内蒙古房贷利率最新消息
  • 云南省国家税务局APP
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设