2012-12-30 24 views
0

我正在做数据迁移,它处理图片/视频等正在下载,然后通过使用它的api发送到Dropbox。使用芹菜进行数据迁移。这是个好主意吗?

我对整个网络应用程序使用python-django,但我想这会占用很多带宽,并且可能会出现很多问题,其中保存的一个映像的失败不应阻止整个迁移。

因此,芹菜是一个好主意吗?还是扭曲?

我有点困惑这将如何帮助我。我想到的是为处理单个图像或一小部分图像的过程产生一个服务器/线程,从而能够在多个线程上完成。

回答

1

你的问题的简短答案是“芹菜是个好主意吗?”是是的”。我已经使用Celery实现了类似的过程,用户提交表单的过程中启动了异步调用Twitter API,然后将其写回数据库中的保存对象。我发现芹菜杰出的这项任务(没有双关语意)。

Celery可以让你启动预定义的任务(其中一部分可以认为是“正常”的Python函数,添加了@task装饰器),每次用户表示他们想要下载图像或图像。 Celery为您提供了针对错误和重试的细粒度,每项任务控制,任务可以单独提交,也可以作为连锁,和弦或组提交,所有这些都意味着即使单个图像无法下载,您仍然可以确保满足您的迁移要求。

我建议花一些时间与芹菜教程here和Celery-Django教程here,这将介绍与芹菜和Django的基本工作流程。

我不能扭曲的优劣说话,但如果你正在寻找在各自的相对优势和劣势的意见,这些看起来像一个良好的开端:

相关问题