草庐IT

CELERY_ALWAYS_EAGER

全部标签

python - 如何保持多个独立的 celery 队列?

我试图在同一个redis数据库中保留多个具有不同任务和工作人员的celery队列。真的只是一个方便的问题,我的机器上只需要一个redis服务器而不是两个。我逐字遵循celery教程文档,因为它是让它为我工作的唯一方法。现在,当我尝试使用稍微调整的名称/队列来复制所有内容时,它会不断出错。注意-我是Python和Celery的新手,这显然是问题的一部分。我不确定哪些部分被命名为“任务/任务”作为名称与特殊词。我的精简版文档:运行celery-Atasksworker以生成worker。tasks.py包含带有celery=Celery('tasks',broker='redis://lo

python - 如何保持多个独立的 celery 队列?

我试图在同一个redis数据库中保留多个具有不同任务和工作人员的celery队列。真的只是一个方便的问题,我的机器上只需要一个redis服务器而不是两个。我逐字遵循celery教程文档,因为它是让它为我工作的唯一方法。现在,当我尝试使用稍微调整的名称/队列来复制所有内容时,它会不断出错。注意-我是Python和Celery的新手,这显然是问题的一部分。我不确定哪些部分被命名为“任务/任务”作为名称与特殊词。我的精简版文档:运行celery-Atasksworker以生成worker。tasks.py包含带有celery=Celery('tasks',broker='redis://lo

python - 为什么 CELERY_ROUTES 既有 "queue"又有 "routing_key"?

我对AMQP的理解是,消息只有以下几个组成部分:邮件正文路由键交流队列附加到交换。消息不能对队列有任何了解。他们只是发布到一个交换器,然后根据交换器类型和路由键,将消息路由到一个或多个队列。在Celery中,推荐的任务路由方式是通过CELERY_ROUTES设置。从文档中,CELERY_ROUTES是...Alistofrouters,orasinglerouterusedtoroutetaskstoqueues.http://celery.readthedocs.org/en/latest/configuration.html#message-routing它包括一个例子......

python - 为什么 CELERY_ROUTES 既有 "queue"又有 "routing_key"?

我对AMQP的理解是,消息只有以下几个组成部分:邮件正文路由键交流队列附加到交换。消息不能对队列有任何了解。他们只是发布到一个交换器,然后根据交换器类型和路由键,将消息路由到一个或多个队列。在Celery中,推荐的任务路由方式是通过CELERY_ROUTES设置。从文档中,CELERY_ROUTES是...Alistofrouters,orasinglerouterusedtoroutetaskstoqueues.http://celery.readthedocs.org/en/latest/configuration.html#message-routing它包括一个例子......

Python+ celery : Chaining jobs?

Celerydocumentation表明让任务等待其他任务的结果是一个坏主意……但是建议的解决方案(参见“好”标题)留下了一些不足之处。具体来说,没有明确的方法可以将子任务的结果返回给调用者(而且,这有点难看)。那么,有没有办法“链接”作业,让调用者得到最终作业的结果?例如,使用add示例:>>>add3=add.subtask(args=(3,))>>>add.delay(1,2,callback=add3).get()6或者,是否可以返回Result的实例?例如:@taskdefadd(x,y,callback=None):result=x+yifcallback:returns

Python+ celery : Chaining jobs?

Celerydocumentation表明让任务等待其他任务的结果是一个坏主意……但是建议的解决方案(参见“好”标题)留下了一些不足之处。具体来说,没有明确的方法可以将子任务的结果返回给调用者(而且,这有点难看)。那么,有没有办法“链接”作业,让调用者得到最终作业的结果?例如,使用add示例:>>>add3=add.subtask(args=(3,))>>>add.delay(1,2,callback=add3).get()6或者,是否可以返回Result的实例?例如:@taskdefadd(x,y,callback=None):result=x+yifcallback:returns

python - 在 Celery 任务中运行 Scrapy 蜘蛛

我有一个Django站点,当用户请求它时会发生抓取,我的代码会在新进程中启动一个Scrapyspider独立脚本。当然,这不适用于用户的增加。类似这样的:classStandAloneSpider(Spider):#aregularspidersettings.overrides['LOG_ENABLED']=True#moresettingscanbechanged...crawler=CrawlerProcess(settings)crawler.install()crawler.configure()spider=StandAloneSpider()crawler.crawl(s

python - 在 Celery 任务中运行 Scrapy 蜘蛛

我有一个Django站点,当用户请求它时会发生抓取,我的代码会在新进程中启动一个Scrapyspider独立脚本。当然,这不适用于用户的增加。类似这样的:classStandAloneSpider(Spider):#aregularspidersettings.overrides['LOG_ENABLED']=True#moresettingscanbechanged...crawler=CrawlerProcess(settings)crawler.install()crawler.configure()spider=StandAloneSpider()crawler.crawl(s

基于 Python 的异步工作流模块 : What is difference between celery workflow and luigi workflow?

我使用django作为Web框架。我需要一个可以执行同步和异步(批处理任务)任务链的工作流引擎。我发现celery和luigi作为批处理工作流程。我的第一个问题是这两个模块之间有什么区别。Luigi允许我们重新运行失败的任务链,并且只有失败的子任务才能重新执行。celery呢:如果我们重新运行链(在修复失败的子任务代码之后),它是否会重新运行已经成功的子任务?假设我有两个子任务。第一个创建一些文件,第二个读取这些文件。当我将这些放入celery链中时,由于第二个任务中的错误代码,整个链失败。当我在第二个任务中修复代码后重新运行链时会发生什么?第一个任务会尝试重新创建这些文件吗?

基于 Python 的异步工作流模块 : What is difference between celery workflow and luigi workflow?

我使用django作为Web框架。我需要一个可以执行同步和异步(批处理任务)任务链的工作流引擎。我发现celery和luigi作为批处理工作流程。我的第一个问题是这两个模块之间有什么区别。Luigi允许我们重新运行失败的任务链,并且只有失败的子任务才能重新执行。celery呢:如果我们重新运行链(在修复失败的子任务代码之后),它是否会重新运行已经成功的子任务?假设我有两个子任务。第一个创建一些文件,第二个读取这些文件。当我将这些放入celery链中时,由于第二个任务中的错误代码,整个链失败。当我在第二个任务中修复代码后重新运行链时会发生什么?第一个任务会尝试重新创建这些文件吗?