浅谈Python的RabbitMQ使用
2021/5/30 20:52:17
本文主要是介绍浅谈Python的RabbitMQ使用,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
AMQP高级消息队列协议
AMQP是应用层协议的一个开放标准,为面向消息的中间件设计,基于此协议的客户端与消息中间件可传递消息,并不受产品、开发语言等条件的限制。
角色
- Client(Producer)
- Server(vhost)
- Client(Consumer)
消息结构
header(exchange, id, persistence) + body
常用工作模式
- Work queues
- Publish / Subscribe
- Routing
- Topics
- RPC
Work queues
![](/upload/202105/30/202105302052158088.png)
生产者将消息发送到指定的队列,Rabbit将队列中的消息依次推送给消费者。 依次推送设置:prefetch_count=1 消息持久化:delivery_mode = 2 队列持久化:durable=True 消息通知:auto_ack=False / no_ack=True
Publish / Subscribe
![](/upload/202105/30/202105302052159977.png)
即广播模式 交换机:fanout 交换机持久化:durable=True
Routing
![](/upload/202105/30/202105302052161868.png)
交换机:direct
Topic
![](/upload/202105/30/202105302052163600.png)
交换机:topic
RPC
![](/upload/202105/30/202105302052165490.png)
客户端向服务端发送新消息,客户端收到消息后回复消息给客户端 Reply to:回调队列 Correlation id:每个请求的唯一标识
可视化管理
![](/upload/202105/30/202105302052167849.png)
管理API
![](/upload/202105/30/202105302052170207.png)
参考:https://pulse.mozilla.org/api/
其他问题
- DLX 死信队列
- 生产端Confirm机制
- 消费端幂等性
- 可靠性投递
这篇关于浅谈Python的RabbitMQ使用的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-05-08有遇到过吗?同样的规则 Excel 中 比Python 结果大
- 2024-03-30开始python成长之路
- 2024-03-29python optparse
- 2024-03-29python map 函数
- 2024-03-20invalid format specifier python
- 2024-03-18pool.map python
- 2024-03-18threads in python
- 2024-03-14python Ai 应用开发基础训练,字符串,字典,文件
- 2024-03-13id3 algorithm python
- 2024-03-13sum array elements python