草庐IT

celery_state

全部标签

python - Django Celery 日志记录最佳实践

我正在尝试让Celery日志记录与Django一起工作。我在settings.py中进行了日志记录设置以转到控制台(当我在Heroku上托管时效果很好)。在每个模块的顶部,我有:importlogginglogger=logging.getLogger(__name__)在我的tasks.py中,我有:fromcelery.utils.logimportget_task_loggerlogger=get_task_logger(__name__)这适用于记录来自任务的调用,我得到如下输出:2012-11-13T18:05:38+00:00app[worker.1]:[2012-11-1

python - Django Celery 日志记录最佳实践

我正在尝试让Celery日志记录与Django一起工作。我在settings.py中进行了日志记录设置以转到控制台(当我在Heroku上托管时效果很好)。在每个模块的顶部,我有:importlogginglogger=logging.getLogger(__name__)在我的tasks.py中,我有:fromcelery.utils.logimportget_task_loggerlogger=get_task_logger(__name__)这适用于记录来自任务的调用,我得到如下输出:2012-11-13T18:05:38+00:00app[worker.1]:[2012-11-1

Vuex中的States、Mutations、Actions、Getters、Modules、Plugins的作用(推荐使用版本)

目录一、State二、Mutations三、Actions四、Getters五、Modules前提:state.js要引入,importVuefrom'vue'importVuexfrom'vuex'Vue.use(Vuex) 下面我都省略了一、State所有共享数据都放到Store的state中存储conststore=newVuex.Store({state:{count:0}})访问:当前的值为{{this.$store.state.count}}//this可以省略二、Mutations作用:修改Vuex中的全局数据1、只能通过Mutation变更Store中的数据2、操作有点繁琐,但

python - 了解 celery 任务预取

我刚刚发现了配置选项CELERYD_PREFETCH_MULTIPLIER(docs)。默认值为4,但(我相信)我希望预取关闭或尽可能低。我现在将其设置为1,这与我要查找的内容足够接近,但仍有一些我不明白的地方:为什么预取是个好主意?我真的看不出有什么原因,除非消息队列和工作人员之间有很多延迟(在我的情况下,它们当前在同一台主机上运行,​​最坏的情况可能最终在相同数据的不同主机上运行中央)。文档只提到了缺点,但没有解释优点是什么。许多人似乎将其设置为0,希望能够以这种方式关闭预取(我认为这是一个合理的假设)。但是,0表示无限预取。为什么会有人想要无限制的预取,这不是完全消除了您最初引入

python - 了解 celery 任务预取

我刚刚发现了配置选项CELERYD_PREFETCH_MULTIPLIER(docs)。默认值为4,但(我相信)我希望预取关闭或尽可能低。我现在将其设置为1,这与我要查找的内容足够接近,但仍有一些我不明白的地方:为什么预取是个好主意?我真的看不出有什么原因,除非消息队列和工作人员之间有很多延迟(在我的情况下,它们当前在同一台主机上运行,​​最坏的情况可能最终在相同数据的不同主机上运行中央)。文档只提到了缺点,但没有解释优点是什么。许多人似乎将其设置为0,希望能够以这种方式关闭预取(我认为这是一个合理的假设)。但是,0表示无限预取。为什么会有人想要无限制的预取,这不是完全消除了您最初引入

python - Celery - 获取当前任务的任务 ID

如何从任务中获取任务的task_id值?这是我的代码:fromcelery.decoratorsimporttaskfromdjango.core.cacheimportcache@taskdefdo_job(path):"Performsanoperationonafile"#...Codetoperformtheoperation...cache.set(current_task_id,operation_results)这个想法是,当我创建任务的新实例时,我会从任务对象中检索task_id。然后我使用任务ID来确定任务是否已完成。我不想希望通过path值跟踪任务,因为该文件在任务

python - Celery - 获取当前任务的任务 ID

如何从任务中获取任务的task_id值?这是我的代码:fromcelery.decoratorsimporttaskfromdjango.core.cacheimportcache@taskdefdo_job(path):"Performsanoperationonafile"#...Codetoperformtheoperation...cache.set(current_task_id,operation_results)这个想法是,当我创建任务的新实例时,我会从任务对象中检索task_id。然后我使用任务ID来确定任务是否已完成。我不想希望通过path值跟踪任务,因为该文件在任务

python - Celery 收到未注册类型的任务(运行示例)

我正在尝试运行example来自Celery文档。我运行:celeryd--loglevel=INFO/usr/local/lib/python2.7/dist-packages/celery/loaders/default.py:64:NotConfigured:No'celeryconfig'modulefound!PleasemakesureitexistsandisavailabletoPython."isavailabletoPython."%(configname,)))[2012-03-1904:26:34,899:WARNING/MainProcess]--------

python - Celery 收到未注册类型的任务(运行示例)

我正在尝试运行example来自Celery文档。我运行:celeryd--loglevel=INFO/usr/local/lib/python2.7/dist-packages/celery/loaders/default.py:64:NotConfigured:No'celeryconfig'modulefound!PleasemakesureitexistsandisavailabletoPython."isavailabletoPython."%(configname,)))[2012-03-1904:26:34,899:WARNING/MainProcess]--------

python - 使用 django-celery 进行单元测试?

我正在尝试为我们的django-celery提出一种测试方法。项目。我已阅读documentation中的注释,但它并没有让我对实际做什么有一个好主意。我不担心测试实际守护进程中的任务,只担心my代码的功能。主要是我想知道:我们如何在测试期间绕过task.delay()(我尝试设置CELERY_ALWAYS_EAGER=True,但没有任何区别)?我们如何在不实际更改settings.py的情况下使用推荐的测试设置(如果这是最好的方法)?我们还能使用manage.pytest还是必须使用自定义运行器?总的来说,任何用celery进行测试的提示或技巧都会非常有帮助。