最近在学习 Python,正好也可以巩固提高一下 Python!

运行系统 ubuntu 12.04,rabbitmq 版本是 2.7.1,python 版本是 2.7.3。

因为笔记里提到一些名词,虽然叫法不一样,不过都是表达同样的事物,所以有必要先说明下,以免产生疑惑。主要是两个名词:

  • producer 直译为生成者,就是产生消息的东东,笔记里提到的发送者、发送端都是一个意思。如果把消息比喻成任务,也可以理解为任务分配者。
  • consumer 直译为消费者,就是接收消息的东东 ,笔记里提到的接收者、接收端都是一个意思。如果把消息比喻成任务,也可以理解为工作者。

1、ubuntu 安装 rabbitmq 和 python 的使用实现

这篇主要记录了在 ubuntu 下安装 rabbitmq 服务的过程和安装 python pika 库的过程,并演示了单向发送消息的工作方式。

2、python 使用 rabbitmq 实例二,工作队列

继上一篇,演示了多个接收端情况下,消息发送的工作方式。

3、python 使用 rabbitmq 实例三,交换机

前面两篇的示例,都只使用了一个队列,消息是依次发送给绑定到该队列的接收端。如果要广播出去,就要使用交换机,本篇演示了交换机的工作方式。

4、python 使用 rabbitmq 实例四,路由键

第三篇的消息是广播出去的,所有接收端都会接收到,如果要精确指明消息的接收端,就要使用路由键,本篇主要演示了路由键的工作方式。

5、python 使用 rabbitmq 实例五,路由键模糊匹配

第四篇的路由键是精确匹配的,有时用需要模糊匹配,本篇主要演示了路由键模糊匹配的工作方式。

6、python 使用 rabbitmq 实例六,远程结果返回

前面五篇的消息都是发送出去就完事了,接收端并没有将结果返回给发送端。有些情况下需要接收端将接收到的消息处理后再返回给发送端,本篇演示了这种情况的处理方式。

7、python 使用 rabbitmq 实例七,相互关联编号 correlation id

上一篇只是发送单条消息,返回的结果自然是对应该条消息,但是如果同时发出多条消息,就会返回多个结果,如何将发送的消息和返回的结果一一对应起来呢?本篇演示了 correlation id 的工作方式,就是用来解决这个问题的。

转载请注明: 转载自Ryan 是菜鸟 | LNMP 技术栈笔记

如果觉得本篇文章对您十分有益,何不 打赏一下

谢谢打赏

本文链接地址: Python 采用 pika 库使用 Rabbitmq 总结和示例(转)

知识共享许可协议 本作品采用知识共享署名-非商业性使用 4.0 国际许可协议进行许可