gpt4 book ai didi

Django celery ubuntu 14.04

转载 作者:可可西里 更新时间:2023-11-01 11:26:14 25 4
gpt4 key购买 nike

我正在尝试在 digital ocean 上的 ubuntu 14.04 服务器上部署一个 django 应用程序。

我知道 celery 是用于异步任务的。用户做了一些事情,而不是等待执行昂贵的任务,他们可以转到站点的另一个部分。 Celery 通过使用 redis 或其他消息代理来做到这一点。它创建一个队列,工作人员执行队列中的任务。我正在尝试使用它来降低 api 调用对用户体验的侵入性。

当我将它部署到生产环境中时,我对 celery “存在”的所有内容感到非常困惑。我看到帖子说我可以通过管理页面用 celery 做我想做的一切,其他帖子有一个启动 celery 的主管文件。当我尝试制作主管文件时,我在“/home/django/django_project/venv/bin/celery”处收到错误命令不可执行。

关于通过管理页面管理 celery 我不确定 celery worker 和队列是如何创建和管理的。我想通过那里安排任务,但总的来说我很困惑。

如果有人解决这个问题,我将不胜感激。谢谢

更新:我选择使用 Celery beat。当我执行时:

celery -A <proj> beat -l info -S django

发生这种情况:

[2017-07-13 22:31:51,051: INFO/MainProcess] beat: Starting...
[2017-07-13 22:31:51,052: INFO/MainProcess] Writing entries...
[2017-07-13 22:31:51,107: INFO/MainProcess] Scheduler: Sending due task does it work!? (does_celery_work)
[2017-07-13 22:31:51,134: INFO/MainProcess] Writing entries...
[2017-07-13 22:32:21,094: INFO/MainProcess] Scheduler: Sending due task does it work!? (does_celery_work)
[2017-07-13 22:32:51,095: INFO/MainProcess] Scheduler: Sending due task does it work!? (does_celery_work)

太棒了!但是任务没有执行。这是一个 twilio 任务,每 30 秒发送一次电话号码,以证明 celery 计划任务正在运行。当我 ping 它时,redis 服务器工作正常,我什至仔细检查它是否在正确的端口上并对该端口执行 ping 操作。那么,您是否会着手让 celery beat 自动工作并确保其正常工作?

最佳答案

你试过了吗http://flower.readthedocs.io/en/latest/ ?它将帮助您查看工作人员是否已正确设置以及查看您的任务。

我找到了 django celery redis 的一个很好的例子 https://gitlab.com/harveydf-tutorials/django-celery-realtime

希望这些对你有帮助。

关于Django celery ubuntu 14.04,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45091117/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com