https://docs.celeryq.dev/en/stable/userguide/routing.html#routing-tasks

https://blog.csdn.net/wanglei_storage/article/details/130029916

https://www.cnblogs.com/yangjian319/p/9097171.html

celery配置:

task_routes = {
# 将add任务放到add_queue队列中执行
# key是任务函数的完整路径, 然后指定queue
# key也可以是通配形式,比如app.users.*
"apps.users.celery_test.tasks.add": {"queue": "add_queue"} # 其他的任务默认会丢给名为celery队列的worker进程处理。并不需要定义。
}

先启动flower监测工具,flower最先启动,不然已经分发的任务flower看不到的

celery.exe -A celery_tasks.main flower

启动worker进程

# -Q 是用来表示当前的Worker只处理名为add_queue的队列任务。
# -n 是给当前的worker进行命名,不然多个worker会出现名字冲突提示。
celery.exe -A celery_tasks.main worker -l INFO -P eventlet -Q add_queue -n celery@add_queue # 再启动一个专门处理默认的celery队列的worker(也就是之前一直使用的方法)
celery.exe -A celery_tasks.main worker -l INFO -P eventlet -n celery@celery_queue

启动beat:

celery.exe -A celery_tasks.main beat -l INFO

进入flower的web界面查看:

调用异步任务时手动指定队列

class CeleryView(APIView):
# authentication_classes = [AllowAny, ]
permission_classes = [AllowAny, ] def get(self, request: Request): from .tasks import add
# add方法默认是会被调度到add_queue队列中的
# 现在手动指定调度到默认的celery队列中。
add.apply_async(args=(1, 8), queue="celery") return Response("celery task")

Celery将任务分发到不同的队列,交给不同的Worker处理的更多相关文章

  1. Celery 大量任务 分发

    Celery是由Python开发的一个简单.灵活.可靠的处理大量任务的分发系统,它不仅支持实时处理也支持任务调度. user:用户程序,用于告知celery去执行一个任务. broker: 存放任务( ...

  2. python celery 多work多队列

    1.Celery模块调用 既然celery是一个分布式的任务调度模块,那么celery是如何和分布式挂钩呢,celery可以支持多台不通的计算机执行不同的任务或者相同的任务. 如果要说celery的分 ...

  3. 分布式消息队列 Celery 的最佳实践

    目录 目录 不使用数据库作为 Broker 不要过分关注任务结果 实现优先级任务 应用 Worker 并发池的动态扩展 应用任务预取数 保持任务的幂等性 应用任务超时限制 善用任务工作流 合理应用 a ...

  4. Celery基本原理探讨

    本文对Celery进行了研究,由于其实现相对比较复杂没有足够的时间和精力对各方各面的源码进行分析,因此本文根据Celery的使用方法以及实际行为分析其运行原理,并根据查阅相关代码进行了一定程度的验证. ...

  5. celery (二) task

    Task task 具有如下特点: task 可以在任何可调用的地方创建.它有双重角色: 定义了当task被调用时,会发送一个消息. 定义了当worker收到消息时会运行消息对应的函数 每个task都 ...

  6. Docker部署Django项目+Nginx+Fluend日志收集 和redis、memcached、RabbitMQ、Celery

    前言 一.docker 1.docker是什么? Docker的英文本意是“搬运工”,Docker搬运的是集装箱(Container)可以成为容器,我可以把写的Django的WEB应用以及Python ...

  7. [源码解析] 并行分布式框架 Celery 之架构 (2)

    [源码解析] 并行分布式框架 Celery 之架构 (2) 目录 [源码解析] 并行分布式框架 Celery 之架构 (2) 0x00 摘要 0x01 上文回顾 0x02 worker的思考 2.1 ...

  8. Celery的实践指南

    http://www.cnblogs.com/ToDoToTry/p/5453149.html Celery的实践指南   Celery的实践指南 celery原理: celery实际上是实现了一个典 ...

  9. RabbitMQ消息队列1: Detailed Introduction 详细介绍

    1. 历史 RabbitMQ是一个由erlang开发的AMQP(Advanced Message Queue )的开源实现.AMQP 的出现其实也是应了广大人民群众的需求,虽然在同步消息通讯的世界里有 ...

  10. Celery,Tornado,Supervisor构建和谐的分布式系统

    Celery 分布式的任务队列 与rabbitmq消息队列的区别与联系: rabbitmq 调度的是消息,而Celery调度的是任务. Celery调度任务时,需要传递参数信息,传输载体可以选择rab ...

随机推荐

  1. 【项目源码】JSP超市积分管理系统源码下载

    会员积分管理系统的目标是为中小规模的会员积分管理系统的目标是为中小规模的超市提供会员信息管理.会员积分管理以及积分兑换管理的具体解决方案. 网站和积分管理系统采用B/S结构,使用J2EE的技术开发完成 ...

  2. zxy 简单 dp 大讲堂

    讲课讲得非常清楚啊,我绝赞膜拜.节奏可以,思路清晰,解法自然,为讲师点赞. 第一个题是 loj3282 / joisc2020 - Treatment Project.原问题由 \(\left(S, ...

  3. Springboot简单功能示例-5 使用JWT进行授权认证

    springboot-sample 介绍 springboot简单示例 跳转到发行版 查看发行版说明 软件架构(当前发行版使用) springboot hutool-all 非常好的常用java工具库 ...

  4. Webpack DevServer 代理本地静态目录

    前言 项目里需要离线切片地图,但切片地图文件很多,需求上有时无法单独提供一个独立的文件服务器或者切片服务器,放在 public 难免会在调试运行时被复制到 DevServer 上,而这个操作在低层级少 ...

  5. Caused by: liquibase.exception.ValidationFailedException: Validation Failed:1 change sets check sum

    db/changelog/mysql/changelog-0001-307096-1.0.sql::1.0::buoluo.meng was: 8:a5d8f616a121230c204fd2b878 ...

  6. 【Unity3D】UI Toolkit数据动态绑定

    1 前言 ​ 本文将实现 cvs 表格数据与 UI Toolkit 元素的动态绑定. ​ 如果读者对 UI Toolkit 不是太了解,可以参考以下内容. UI Toolkit简介 UI Toolki ...

  7. 源码搭建zabbix平台

    1.基于lnmp部署zabbix监控平台; zabbix优点: 1.支持自动发现服务器和网络设备: 2.分布式的监控体系和集中式的WEB管理: 3.支持主动监控和被动监控模式: 4.基于SNMP.IP ...

  8. C#版字节跳动SDK - SKIT.FlurlHttpClient.ByteDance

    前言 在我们日常开发工作中对接第三方开放平台,找一款封装完善且全面的SDK能够大大的简化我们的开发难度和提高工作效率.今天给大家推荐一款C#开源.功能完善的字节跳动SDK:SKIT.FlurlHttp ...

  9. Django admin 注册自己的路由

    通过 admin.py 在 Django 后台注册自己的路由(对应自己的视图) 要在一个 app 里面的 admin.py 添加如下代码 # django2\apps\business\admin.p ...

  10. JUC并发编程学习笔记(三)生产者和消费者问题

    生产者和消费者问题 synchronized版-> wait/notify juc版->Lock 面试:单例模式.排序算法.生产者和消费者.死锁 生产者和消费者问题 Synchronize ...