每个任务的并发级别

时间:2014-02-11 08:10:24

标签: celery

我需要使用Celery从多个域下载大量URL。我有一个任务,下载一个URL,做一些东西,然后在MongoDB中存储一些数据。

运行任务的计算机可以轻松处理此类型的64个并发任务,但为了尽量减少对目标Web服务器的影响,我只希望每个域使用四个并发请求。有没有办法做到这一点?

我查看了几个锁定示例,但如果它在一定时间内无法获取锁定,它们似乎都会撤销任务。

1 个答案:

答案 0 :(得分:1)

刚刚意识到使用链和和弦可以很容易地实现这一点,只需将URL访问任务添加到N个链(其中N是每个域的并发下载的数量)。

然后我可以将这些链添加到单个和弦中,以便在下载所有URL时运行分析任务。

相关问题