我在运行周期性任务时遇到问题?当我运行代码celeryworker-Atasks--loglevel=debug.看起来不错,但在终端中出现此消息后它停止并且不执行任何操作:[2019-07-1022:29:21,149:DEBUG/MainProcess]basic.qos:prefetch_count->16fromceleryimportCeleryfromcelery.schedulesimportcrontabfromdatetimeimportdate,timedeltafromconfigimport*fromemailimportencodersfromemail.mi
我有一个非常简单的Celery任务,它运行一个(长时间运行的)shell脚本:importosfromceleryimportCeleryos.environ['CELERY_TIMEZONE']='Europe/Rome'os.environ['TIMEZONE']='Europe/Rome'app=Celery('tasks',backend='redis',broker='redis://OTHER_SERVER:6379/0')@app.task(name='ct.execute_script')defexecute_script(command):returnos.syste
我正在试验使用Redis作为代理的Celeryworker。这是我对Celeryworker的测试代码:fromceleryimportCeleryapp=Celery('tasks',broker='redis://xxxxx.net:6379/0')@app.taskdefnextexec(payload):print(payload)使用redis-cli,我运行以下命令将一个值插入celery队列(由Celery自动创建)RPUSHcelerysomekey'somevalue'但是当执行查询时,我的worker系统性地崩溃了,我得到一个Unrecoverableerror:J
关闭。这个问题是opinion-based.它目前不接受答案。想要改进这个问题?更新问题,以便editingthispost可以用事实和引用来回答它.关闭4年前。Improvethisquestion目前我正在使用celery构建一个定时数据库同步功能,它会定期从多个数据库中获取数据。如果我想存储任务结果,如果我将它们存储在Redis中而不是像MySQL这样的RDB中,性能会更好吗?
目前有一个dockerizeddjango应用程序,打算使用Celery来处理长时间运行的任务。但是Docker-composeup失败并出现以下错误:[2018-12-1717:25:59,710:ERROR/MainProcess]consumer:Cannotconnecttoredis://redis:6379//:Error-2connectingtoredis:6379.Nameorservicenotknown..在SOF上有一些类似的问题,但它们似乎都集中在settings.py中的CELERY_BROKER_URL,我相信我已经正确设置如下CELERY_BROKER_
我试图创建一个应该在celery和redis服务器中每分钟运行的任务为了执行redis,我运行了"redis-server"为了执行celery,我运行了"celery-Atasksworker--loglevel=info"这是我的tasks.py文件fromceleryimportCeleryfromcelery.schedulesimportcrontabfromcelery.taskimportperiodic_taskapp=Celery('tasks',backend='redis://localhost',broker='redis://localhost')@app.t
有没有办法询问redis、celery或postgres,以便在任务完成之前跟踪任务请求?配置:BROKER_URL="redis://localhost:6379"CELERY_RESULT_BACKEND="django-db"fromceleryimportCeleryfromdjango.confimportsettingsapp=Celery("someapp",)现在,过了一会儿,表django_celery_results_taskresult有了任务,包括它的id、task_id、task_name和结果,等等。id|task_name|status|date_done
在本地使用djangocelerybeat我收到错误“PeriodicTask”对象没有属性“_default_manager”。我正在使用Django1.10。当我安排一项任务时,它会起作用。但是片刻之后,出现了如下所示的红色错误回溯[2016-09-2311:08:34,962:INFO/Beat]Writingentries...[2016-09-2311:08:34,965:INFO/Beat]Writingentries...[2016-09-2311:08:34,965:INFO/Beat]Writingentries...[2016-09-2311:08:34,966:E
我正在使用Python、Django和MySql开发Web应用程序。我在应用程序中有一项规定,用户可以上传*.wmv和*.mov文件,系统将处理这些文件并将其转换为*.mp4。我使用的是单一服务器架构,但随着用户群的增长,视频转换消耗了90%的内存。我正在考虑使用AmazonEC2将视频转换/流媒体服务器移动到云端,以便使用Redis和Celery在不同的服务器上进行转换。我想知道Redis-Celery是否支持多层架构。如果有人成功地做到了这一点,请告诉我步骤。这将非常有用,因为我正在谷歌搜索但找不到任何支持文档。 最佳答案 如果
我有两台运行Celery的服务器和一个Redis数据库。他们都收听相同的队列,因为它们是为了划分“工作负载”。任务在Redis上排队,但看起来我的两台Celery服务器同时接收了任务,因此执行了两次(每台服务器一次)。有没有办法通过Redis/Celery设置来防止这种情况发生?谢谢, 最佳答案 我的每台服务器都对celeryworker使用相同的名称。从那时起,我在工作人员名称(-nmy_worker_%h)的末尾添加了%h以显示主机名。这样CeleryFlower就可以显示所有的worker在他们自己的行中,并且不会出现混淆。