消息队列介绍和使用

思考:

  • 如何将发送短信从主业务中解耦出来。

1. 生产者消费者设计模式

  • 最常用的解耦方式之一,寻找中间人(broker)搭桥,保证两个业务没有直接关联
  • 我们称这一解耦方式为:生产者消费者设计模式

总结:

  • 生产者生成消息,缓存到消息队列中,消费者读取消息队列中的消息并执行。
  • 由美多商城生成发送短信消息,缓存到消息队列中,消费者读取消息队列中的发送短信消息并执行。

2.中间人broker

  • 示例:此处演示Redis数据库作为中间人broker
  • Celery需要一种解决消息的发送和接受的方式,我们把这种用来存储消息的的中间装置叫做message broker, 也可叫做消息中间人。
  • 作为中间人,我们有几种方案可选择: