问题标签 [celery]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
9827 浏览

python - Django 异步处理

我有一堆 Django 请求,它们执行一些数学计算(用 C 编写并通过 Cython 模块执行),这可能需要不确定的时间(大约 1 秒)来执行。此外,请求不需要访问数据库,并且彼此独立且 Django。

现在一切都是同步的(使用带有sync工作类型的 Gunicorn),但我想让它异步且非阻塞。简而言之,我想做一些事情:

  1. 接收 AJAX 请求
  2. 将任务分配给可用的工作人员(不阻塞主 Django Web 应用程序)
  3. 工人在未知的时间内执行任务
  4. 每当任务完成时,Django 将计算结果(字符串列表)作为 JSON 返回

我对异步 Django 很陌生,所以我的问题是这样做的最佳堆栈是什么。

任务队列非常适合这种过程吗?有人会推荐 Tornado + Celery + RabbitMQ,还是别的什么?

提前致谢!

0 投票
1 回答
2135 浏览

python - Celery tasks vanishing - Django/Celery

here is my code:

my task

using my tasks


problem 1

after a few seconds I perform the following:

prints this:

(the values are not returned in what looks like a pattern)

Second clean OS install+setup:

everything is working as expected, still not sure what happened here...


Tasks are also randomly missing within the Django admin interface...


Anybody know what is going on? :|

0 投票
2 回答
6204 浏览

python - 连接问题 - Celery/Django

漫长的夜晚......无法让我的第二个 Celery/RabbitMQ 设置运行。

步骤1

运行:好的!

第2步

错误:[2010-12-28 03:38:24,690: ERROR/MainProcess] CarrotListener: Connection Error: Socket closed. Trying again in 28 seconds...


我肯定:

  • 添加了rabbitmq用户和虚拟主机
  • 更新了 Django settings.py

编辑:

我认为这可能与从 .deb 而不是 apt-get 安装有关。

卸载 deb 并安装 apt-get 版本后,我得到以下信息:

我的解决方案:

apt-get --purge 删除 rabbitmq-server

apt-get 安装 rabbitmq-server

...没有评论...也许需要一些睡眠:)


关于如何调试它的任何想法?:|

0 投票
1 回答
4762 浏览

python - 通过 pdb 调试 djcelery 的 celeryd

有没有人尝试过使用 pdb 调试 celeryd worker?每当遇到断点时(通过 pdb 或通过运行 celeryd pdb.set_trace()),我遇到以下错误:

有什么解决办法吗?

0 投票
2 回答
3099 浏览

database - Is there a way to make Celery/RabbitMQ persistent?

So that if my server crashes, I still have my Tasks?

0 投票
3 回答
170 浏览

python - 为什么我的 Python 代码不起作用?

从 celery.decorators 导入任务

那是我的 tasks.py 文件。

如您所见,该功能有效。但是,该文件不会创建. 为什么?

由于可能的权限问题,我尝试更改多个文件路径。但没有运气。

0 投票
3 回答
173 浏览

python - 我的 Python 代码有问题吗?(功能)

如果我运行这段代码,我希望任务会不断地添加到队列中。但事实并非如此!只有第一个任务 (5,2) 被添加到队列中并被处理。

由于这一行,应该不断添加任务:“add.delay(1,9)”

注意:我需要每个任务来执行另一个任务。

0 投票
2 回答
9191 浏览

python - 在 Celery 中,我如何运行一个任务,然后让该任务运行另一个任务并继续执行?

现在,我运行简单的任务。它返回一个随机数。但是,我如何让它在该任务中运行另一个任务

0 投票
2 回答
1039 浏览

python - 使用 djcelery 抓取网站并填充 django 模型

我无法让 celery 与 django 一起使用。我想用 celery 抓取一个网站,每 20 分钟更新一些 django 模型。

我在我的应用程序目录中创建了一个具有更新类的任务文件:

如果我从命令行运行它,该类会正确更新我的模型:

我在 setting.py 中的 celery 配置如下所示:

但是当我运行时manage.py celeryd -v 2出现连接错误:

我错过了什么?

更新:

我发现django-kombu看起来不错,因为它使用了我现有的数据库。我已经安装了 django-kombu 和 kombu,但现在运行时出现以下错误manage.py celeryd -v 2

0 投票
1 回答
2803 浏览

python - CeleryCAM 不工作... - Django/Celery

芹菜效果很好!:) 例如结果返回没有问题!


不幸的是 celerycam 没有:

这就是我的面板的样子,celeryev 看起来一样。

注意:所有这些任务都已成功完成,只是没有显示为已完成,名称也没有显示。

替代文字


我正在使用以下命令:

python manage.py celeryd -l info -E

python manage.py celerycam

我的经纪人是RabbitMQ

我的数据库是MongoDB

Django、Celery 和 RabbitMQ 在干净的 Ubuntu 10 安装上运行。


有什么想法吗?如果有人能帮我解决这个问题,那就太棒了:|