celery相关内容

在Django向导中上传文件的Celery任务

我有一个涵盖两种形式的WizardView,第二种具有FileField.是否可以创建一个Celery任务来从该FileField上载文件? 我应该创建另一个FILE_UPLOAD_HANDLER吗?我在 https://docs.djangoproject.com 中找到的所有有关使用向导处理文件的信息都与将file_storage添加到WizardView子类. 解决方案 实际上 ..
发布时间:2021-04-21 20:00:15 Python

如何从Django管理员触发Celery任务?

我有一个名为 Publication 的模型,我想在Django Admin的列表视图中添加一个按钮,该按钮将允许触发Celery任务. admin.py : 来自django.contrib的 导入管理员从.models导入发布类PublicationAdmin(admin.ModelAdmin):change_list_template ="variants/admin_public ..
发布时间:2021-04-21 20:00:12 其他开发

我们如何描述每个Celery任务的内存使用情况?

我使用pytest进行测试,而pytest又执行了一些celery任务.但是,当我使用 mprof运行--include-children py.test test.py 我无法跟踪在芹菜工作者内部运行的每个芹菜任务消耗的内存.我能看到py.test进程消耗了50 MB的RAM(我可以在mprof图中看到),而celery工人消耗了大约600-700 MB的RAM,这并没有反映在mprof ..
发布时间:2021-04-21 20:00:10 Python

芹菜-权限问题-创建文件夹

我在centos7服务器上的网站(Django)的生产模式下使用 celery (职位经理). 我的问题是,在芹菜任务中,我的函数未创建文件夹(请参见 my_function ). 功能 def my_fucntion():parent_folder = THE_PARENT_PATH如果不是os.path.exists(centrifuge_recentrifuge_work_d ..
发布时间:2021-04-21 20:00:07 其他开发

芹菜任务不起作用

Celery文档说Celery 3.1可以直接使用django.但是任务不起作用.我有task.py: 芹菜导入任务中的 从datetime导入timedelta@ task.periodic_task(run_every = timedelta(seconds = 20),ignore_result = True)def disable_not_confirmed_users():打印“开始 ..
发布时间:2021-04-21 20:00:04 Python

无法从Celery队列获取结果

我一直在Windows 7上使用Celery.现在,我正在阅读“下一步"教程: >>>状态'待办的' 我觉得这很奇怪,因为我认为任务已经完成.我仔细检查了ID以确保结果. 看起来客户端已配置为使用amqp作为后端: >>>打印(res.backend) ..
发布时间:2021-04-21 20:00:01 Python

Celery如何以公平的方式分配用户的任务?

我正在执行的任务与抓取有关URL的一些基本信息有关,例如标题,描述和OGP元数据.如果用户A请求抓取200个URL,并且在用户B请求10个URL之后,用户B的等待时间可能会比他/他的预期长得多. 我要实现的目标是基于每个用户或至少在用户之间公平地限制特定任务的速率. 用于速率限制的Celery实现过于广泛,因为 ..
发布时间:2021-04-21 19:59:58 Python

芹菜:每个工人对task_acks_late的不同设置/向芹菜添加自定义选项

此问题是django + celery:禁用一名工作人员的预取功能,是否有错误? 我遇到了一个芹菜问题(请参阅我跟进的问题),为了解决这个问题,我希望有两个芹菜工人,每个工人的-concurrency 1值,但是具有task_acks_late的两个不同设置. 我当前的方法正在工作,但我认为它不是很漂亮.我正在执行以下操作: 在我的django项目的 settings.py 中: ..
发布时间:2021-04-21 19:59:55 Python

芹菜花-如何加载以前捕获的任务?

我开始将芹菜花用于任务监控,它的工作原理很迷人.不过,我有一个顾虑,如何在花朵重启后“重新加载"受监视任务的信息?我将redis用作代理,即使在意外重启服务(或服务器)的情况下,我也需要选择检查任务. 预先感谢 解决方案 我发现了我.这是在运行芹菜花的命令中设置持久标记的问题. ..
发布时间:2021-04-21 19:59:49 Python

收到未注册的芹菜任务

运行工作者从队列中接收作业时,出现未注册错误.这就是我正在做的 芹菜-任务胜过 以上命令将在特定时间安排作业.之后,该任务将被添加到默认队列中.现在,我在其他终端上以如下方式运行celery worker 芹菜工人-Q默认值 但是我遇到了以下错误 [2014-08-19 19:34:02,466:错误/MainProcess]收到类型为'TasksReg.vodafon ..
发布时间:2021-04-21 19:59:47 其他开发

django + celery:禁用一名工作人员的预取功能,是否存在错误?

我有一个芹菜的Django项目 由于RAM的限制,我只能运行两个工作进程. 我混合了“慢"和“快"任务.快速任务应尽快执行.在很短的时间内(0.1s-3s)可以有许多快速任务,因此理想情况下,两个CPU都应处理它们. 缓慢的任务可能会运行几分钟,但结果可能会延迟. 慢任务的发生频率较低,但是可能同时出现2或3个队列. 我的想法是拥有一个: 1个并发性为1的芹菜工 ..
发布时间:2021-04-21 19:59:41 Python

捕获芹菜任务发送的django信号

捕获从芹菜任务发送的django信号.是否可以?据我所知,它们运行在不同的进程中 @ celery.taskdef my_task():...custom_signal.send()@receiver(custom_signal)def my_signal_handler():... 解决方案 请注意,您的异步任务必须是@shared_task装饰器.以便从外部调用,因为它不会附加到具体 ..
发布时间:2021-04-21 19:59:38 其他开发

您如何处理芹菜引发的异常(不是您的代码)?

因此,现在在我的烧瓶应用程序中,我正在使用Celery在远程计算机上部署服务器.现在,我有一个枚举状态,它指示部署过程的生命周期: @ celery.task(bind = True)def deploy_server(自身,server_id):服务器= Server.query.get(server_id)如果不是server.can_launch():返回尝试:server.status ..
发布时间:2021-04-21 19:59:32 Python

CELERYD_TASK_TIME_LIMIT的最大(上限)值?

我们正在用django-celery做一些有趣的事情.我们的几个任务需要一些时间,我们希望让他们来做自己的事情.我尝试将CELERYD_TASK_TIME_LIMIT设置为一个较大的值,例如86400(24小时),但是我的任务仍然报告5分钟为TimeLimitExceededed.我阅读文档的次数比我想记住的要多,但是我找不到任何引用CELERYD_TASK_TIME_LIMIT的默认值或最大值的 ..
发布时间:2021-04-21 19:59:29 其他开发

将链条,组和块与芹菜结合

我想将Celery用于网址抓取器. 我有一个Url列表,我必须对每个URL进行HTTP请求,并将结果写到一个文件中(整个列表使用相同的文件). 我的第一个想法是在每 n 分钟一次的Celery beat调用的任务中编写此代码: @ app.taskdef get_urls():结果= [get_url_content.si(url = url)中的网址]ch =链(组(*结果),w ..
发布时间:2021-04-21 19:59:27 Python

CELERYD_CONCURRENCY,-并发和自动缩放

我对任务路由,并发性和性能有一些疑问.这是我的用例: 我有一台专用服务器来运行celery任务,因此我可以使用所有CPU在该服务器上运行celery worker. 我有很多不同的python任务,我使用:CELERY_ROUTES进行路由,并且由于这些任务执行的是真正不同类型的python代码,因此我创建了5个不同的worker.这些工作程序是在我使用Ansible部署项目时创建的, ..
发布时间:2021-04-21 19:59:24 Python

暂停芹菜任务

我正尝试通过单击用户按钮来暂停芹菜任务. 我所做的是: 用户单击按钮时;我发布了一个AJAX请求,将我的芹菜任务状态更新为"PAUSE" 然后;我的策略是当我开始做一项芹菜任务时;它运行一个for循环.每个for循环;我读取了数据库的“状态",然后查看是否将其设置为“暂停":如果设置为“暂停";我想将其休眠60秒钟,或者直到用户单击“恢复"按钮时才休眠.相同的想法. 这是我 ..
发布时间:2021-04-21 19:59:21 Python

使用相同的args/kwarg撤消芹菜任务

想象一下,如果要执行长时间的任务,并且要有一组特定的args和kwargs.在启动新任务之前,是否有机会以相同的args/kwargs撤销所有正在运行和待处理的任务,因为Im只对最后添加的任务的结果感兴趣.(底层数据在两次调用之间发生变化) 我尝试迭代 inspect.active(), inspect.registered()和 inspect.scheduled()的结果以获取全部任务, ..
发布时间:2021-04-21 19:59:18 Python

Celery延迟任务中的SQLAlchemy会话处理

我正在通过SQLAlchemy使用关系数据库.我想产生一个使用Celery处理数据库的工作.有一个代码: 来自sqlalchemy.orm.session导入会话的 从celery.task导入任务从myapp.user导入用户@任务def作业(用户):# 工作...会话= Session.object_session(用户)使用user.begin():user.value = result ..
发布时间:2021-04-21 19:59:15 其他开发