芹菜:工作并发和保留任务只运行1个任务
发布时间:2020-12-15 00:26:32 所属栏目:Java 来源:网络整理
导读:我的代码中的某些任务需要更长的时间才能执行. 检查后,我注意到虽然我的工作节点设置为并发6,而6个进程存在“做工作”,但只有1个任务显示在“运行任务”下.这里有一点视觉证明: 这是工作者的选择: 而这里是该工作者的任务选项卡,只有一个运行进程: 我发现
我的代码中的某些任务需要更长的时间才能执行.
检查后,我注意到虽然我的工作节点设置为并发6,而6个进程存在“做工作”,但只有1个任务显示在“运行任务”下.这里有一点视觉证明: 这是工作者的选择: 而这里是该工作者的任务选项卡,只有一个运行进程: 我发现如果我重新启动芹菜,并发性再次受到尊重,我会看到> 1运行任务,但经过一些时间/任务后,它恢复了这种行为. 解决这个间歇性问题的任何想法? 解决方法
我不知道这是否是你的用例,但是当我混合长短任务时,我遇到了类似的问题.基本上发生的一件事是,在某些时候,一个进程可以开始一个很长的运行任务,同时预取其他几个任务,阻止它们被其他进程所占用.所以我禁用了预取的东西,这是有用的,只有当你运行了很多很短的任务.
要禁用预取,您需要Celery 3.1和Ofair setting,例如: celery -A proj worker -l info -Ofair (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |