celery - 芹菜启动工人并立即跳动
问题描述
使用自定义调度程序进行芹菜节拍卡住了一段时间:
celery -A myapp worker -S redbeat.RedBeatScheduler -E -B -l info
我的想法是,这将使用celery作为调度程序同时启动 celeryworker
和 celery 。它甚至说,但是它显然没有使用指定的调度程序。没有像这样执行 cron 任务。beats
redbeat.RedBeatScheduler
beat: Staring..
但是,当我将此命令拆分为单独worker
的 andbeats
时,这意味着
celery -A myapp worker -E -l info
celery -A myapp beat -S redbeat.RedBeatScheduler
一切都按预期工作。
有没有办法合并这两个命令?
解决方案
我认为 Celery 工人没有-S
beat 那样的参数。这是 --helps 所说的:
--scheduler SCHEDULER 要使用的调度程序类。默认是 celery.beat.PersistentScheduler
所以我建议你使用 --scheduler 选项并运行celery -A myapp worker --scheduler redbeat.RedBeatScheduler -E -B -l info
。
推荐阅读
- android - Android SMS 消息应用程序忽略 og 图像标签
- javascript - 在 for 循环中动态添加 onfocus 和 onfocusout 不起作用
- json - How to convert json to string in golang and echo framework?
- c# - 在 Blazor 中使用 Azure AD 获取原始 JWT
- excel - VBA - 自动过滤表格并粘贴到新工作表
- java - 当 ModuleLoader 是依赖项时加载模块
- github - 删除流行的存储库部分 - Github
- c# - 在 LINQ 中使用通用列
- java - 使用布尔值来协调 Java 中的两个线程
- spring-cloud - 如何使用 Stream 为 Spring Cloud Dataflow 中的子任务设置全局环境变量 - Task-Launcher