位置: 编程技术 - 正文

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操作命令)

  • 所得税汇算补提所得税会计分录
  • 咨询合同按什么交印花税
  • 保险公司车险理赔款如何入账
  • 外地预缴所得税几个点
  • 业务招待费扣除基数的收入包括哪些
  • 物料损耗会计分录
  • 纸箱报废处理怎么做账
  • 单位房子没有房产证能不能买
  • 营改增后增加了什么征税项目
  • 销售货物类型
  • 单位给职工租房属于福利政策文件
  • 购买国债逆回购有股东限制
  • 税控盘逾期未抄报,交罚款需要带什么
  • 购车保险属于什么费用
  • 初级备考日记
  • 进项税额转出会计分录月末如何结转
  • 缴纳社保的账务处理办法
  • 建安企业核定征收改查账征收后怎么处理账目
  • 外贸企业内销与外销对比
  • 视同买断委托代销如何确认纳税时间?
  • 怎么授权gg修改器root权限
  • 651错误是怎么回事
  • win10应用商店变成英文怎么改成中文
  • 事业单位财政补助和全额拨款有什么区别
  • windows11怎么添加打印机驱动
  • phpemail正则
  • PHP:xml_get_error_code()的用法_XML解析器函数
  • 电脑进程ace是什么
  • 前端文件预览
  • springboot整合了哪些框架
  • netddeclnt.exe - netddeclnt是什么进程 有什么用
  • it最高工资
  • php如何防止xss攻击
  • 雪山上的老鼠
  • 海鸥歌曲
  • 时间序列转换
  • php中include_once
  • 销售商品收到的价款
  • 打车费属于差旅费吗
  • 一般纳税人增值税怎么做账务处理
  • 快递明细单
  • 发票认证注意事项及细节
  • 应交税费的核算范围
  • 现金比率升高
  • 货物逾期保管费怎么算
  • 电力安装工程合同税率能开13%
  • 如何计算税前工资
  • 办公费项目内容
  • 管理费用和销售费用属于什么科目
  • 如何购买车辆交强险保单
  • 缴纳的车辆购置税需要计提吗
  • 进项和销项必须一致才能抵扣吗
  • sql排序分组
  • 分页存储过程包括
  • 侧边栏应用
  • ubuntu 安装
  • 电脑显示配置windows
  • groove音乐怎么添加本地音乐
  • xp系统怎么添加我的电脑到桌面
  • 如何恢复ubuntu
  • ubuntu undate-rc.d 的一些使用介绍
  • mac系统播放器声音小
  • mac电脑自带软件介绍
  • linux bas
  • win10应用商店更新比蜗牛还慢
  • drawcalls2000多
  • div-css
  • 在js中如何判断数据类型
  • 网页制作范例
  • nodejs使用es6
  • javascript例题
  • 轮播图简单实现
  • jquery点击事件有什么方法显示
  • 呼和浩特市契税2021年新规
  • 上海地铁发票可以随便要吗
  • 房地产公司可以查到客户购房信息
  • 宪法宣誓仪式流程图
  • 土地分割抵押 如何实现抵押权
  • 地税局网上报税
  • 福建莆田社保局在哪里
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设