介绍
上一篇我们简单地了解了Machinery如何使用。本篇将通过源码重点分析Machinery的工作原理。
源码分析
发送消息
server发送
broker发送
消费消息
worker.Launch
worker.LaunchAsync
amqp接收消息
amqp消费消息
调用消息处理函数
结果发送到名为uuid的队列
获取结果
同步获取结果
根据uuid获取任务结果
消息消费
结束语
Machinery中对外暴露的两个比较重要的接口,一个是Backend接口,另一是Broker接口。Machinery值得我们学习的东西很多,比如如何用redis实现消息队列、如何用redis实现延迟队列、如何用aqmp实现延迟队列等。