返回介绍

第 9 章 消息队列和 Celery

发布于 2025-04-20 18:52:16 字数 679 浏览 0 评论 0 收藏

消息队列(Message Queue,简称 MQ)提供异步通信协议,可以实现进程间通信或同一进程的不同线程间通信。其中“消息”是指包含必要信息的数据。消息的发送者发送完毕后立即返回,消息被存储进队列中,对这个消息感兴趣的消费者会订阅消息并接收和处理它。使用消息队列的好处如下:

  • 应用解耦。消息是平台无关和语言无关的,消息队列可以应对多变的产品变更。
  • 异步通信。可以缩短请求等待的时间,使用专门处理请求的消费者来执行,提高 Web 页面的吞吐量,尤其是瞬间发生的高流量情况,消息队列非常有助于顶住访问压力。
  • 数据持久化。未完成的消息不会因为某些故障而丢失。
  • 送达保证。消息队列提供的冗余机制保证了消息确实能被处理。除非消费者明确表示已经处理完这个消息,否则这个消息可以被放回队列中以备其他消费者处理。

本章主要包含如下内容:

  • 使用 Beanstalkd。
  • 解释 AMQP,深入理解 RabbitMQ,介绍 RabbitMQ 插件系统,RabbitMQ 集群的故障转移方法等。
  • 介绍 Celery 的架构,运行起一个真实的应用,在 Flask 应用中使用 Celery 等功能。
  • 深入 Celery,介绍 Celery 的依赖及独立用法、Worker 管理、监控等高级功能。
  • 笔者总结的一些实践经验。

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。