草庐IT

Task_disconnected_while_still_run

全部标签

python - 使用 current_app.send_task 时,Celery 任务路由不起作用

我在使用current_app.send_task时遇到Celery队列路由问题我有两个worker(每个队列一个)pythonmanage.pyceleryworker-E-Qpriority--concurrency=8--loglevel=DEBUGpythonmanage.pyceleryworker-Qlow--concurrency=8-E-B--loglevel=DEBUG我在celeryconfig.py文件中定义了两个队列:#-*-coding:utf-8-*-from__future__importunicode_literalsfromdjango.core.ex

python - 使用 current_app.send_task 时,Celery 任务路由不起作用

我在使用current_app.send_task时遇到Celery队列路由问题我有两个worker(每个队列一个)pythonmanage.pyceleryworker-E-Qpriority--concurrency=8--loglevel=DEBUGpythonmanage.pyceleryworker-Qlow--concurrency=8-E-B--loglevel=DEBUG我在celeryconfig.py文件中定义了两个队列:#-*-coding:utf-8-*-from__future__importunicode_literalsfromdjango.core.ex

redis - 错误 : Connection reset by peer while connecting to Elastic cache using stunnal method

我使用的是弹性缓存单节点shardredis4.0以后的版本。我启用了传输中加密并提供了redis授权token。我使用此链接创建了一个带有stunnal的堡垒主机https://aws.amazon.com/premiumsupport/knowledge-center/elasticache-connect-redis-node/我可以使用以下方式连接到弹性缓存redis节点redis-cli-hhostname-p6379-amypassword我也可以远程登录。但是当我在连接后在redis-cli上ping(预期响应“PONG”)时,它给出了“错误:连接被对端重置”我检查了双方

redis - 错误 : Connection reset by peer while connecting to Elastic cache using stunnal method

我使用的是弹性缓存单节点shardredis4.0以后的版本。我启用了传输中加密并提供了redis授权token。我使用此链接创建了一个带有stunnal的堡垒主机https://aws.amazon.com/premiumsupport/knowledge-center/elasticache-connect-redis-node/我可以使用以下方式连接到弹性缓存redis节点redis-cli-hhostname-p6379-amypassword我也可以远程登录。但是当我在连接后在redis-cli上ping(预期响应“PONG”)时,它给出了“错误:连接被对端重置”我检查了双方

带 celery 的 django-socketio : send to socket after async task completes in separate process

如何在我的主要Django应用程序进程中访问Celery任务的结果?或者,如何从单独的进程发布到现有套接字连接?我有一个用户可以收到分数的应用程序。当记录分数时,会进行计算(目标进展等),并根据这些计算向感兴趣的用户发送通知。计算可能需要30秒以上,因此为了避免UI缓慢,这些操作通过Celery任务在后台进程中执行,由我的Score模型的post_save信号调用。理想情况下,我的Nofication模型上的post_save信号会向订阅的客户端发布消息(我正在使用django-socketio,gevent-socketio的包装器)。这看起来很简单......创建乐谱在后台进程中对

带 celery 的 django-socketio : send to socket after async task completes in separate process

如何在我的主要Django应用程序进程中访问Celery任务的结果?或者,如何从单独的进程发布到现有套接字连接?我有一个用户可以收到分数的应用程序。当记录分数时,会进行计算(目标进展等),并根据这些计算向感兴趣的用户发送通知。计算可能需要30秒以上,因此为了避免UI缓慢,这些操作通过Celery任务在后台进程中执行,由我的Score模型的post_save信号调用。理想情况下,我的Nofication模型上的post_save信号会向订阅的客户端发布消息(我正在使用django-socketio,gevent-socketio的包装器)。这看起来很简单......创建乐谱在后台进程中对

python - Django 模型不会保存到 Celery Task 中的数据库中

我遇到了一个非常糟糕的情况。我有以下设置。我有一个代表FSM的django模型djangoFSMfield我有一个celery任务,它发送一封电子邮件,然后推进主要对象FSM的状态。从celery任务的角度来看,对象“似乎”被保存了。但是从主django进程的角度来看,对象没有被更新。奇怪的是,辅助对象被正确保存到数据库中,稍后可以从主django进程访问。我在Celery任务的对象上显式调用了.save(),date_last_modified=models.DateTimeField(auto_now=True,null=True)字段有Celery任务中的时间戳比主线程晚,尽管我

python - Django 模型不会保存到 Celery Task 中的数据库中

我遇到了一个非常糟糕的情况。我有以下设置。我有一个代表FSM的django模型djangoFSMfield我有一个celery任务,它发送一封电子邮件,然后推进主要对象FSM的状态。从celery任务的角度来看,对象“似乎”被保存了。但是从主django进程的角度来看,对象没有被更新。奇怪的是,辅助对象被正确保存到数据库中,稍后可以从主django进程访问。我在Celery任务的对象上显式调用了.save(),date_last_modified=models.DateTimeField(auto_now=True,null=True)字段有Celery任务中的时间戳比主线程晚,尽管我

redis - Redis 3.4及以上版本如何在master/slave config中配置来解决Sentinel running on protected mode的错误?

我正在使用Redis3.2,当从不同的机器连接到sentinel时,我收到以下错误:TryingX.X.X.X...ConnectedtoX.X.X.X.Escapecharacteris'^]'.-DENIEDRedisisrunninginprotectedmodebecauseprotectedmodeisenabled,nobindaddresswasspecified,noauthenticationpasswordisrequestedtoclients.Inthismodeconnectionsareonlyacceptedfromtheloopbackinterface

redis - Redis 3.4及以上版本如何在master/slave config中配置来解决Sentinel running on protected mode的错误?

我正在使用Redis3.2,当从不同的机器连接到sentinel时,我收到以下错误:TryingX.X.X.X...ConnectedtoX.X.X.X.Escapecharacteris'^]'.-DENIEDRedisisrunninginprotectedmodebecauseprotectedmodeisenabled,nobindaddresswasspecified,noauthenticationpasswordisrequestedtoclients.Inthismodeconnectionsareonlyacceptedfromtheloopbackinterface