Django:在服务器上运行定期更新数据的进程

时间:2015-03-24 22:48:02

标签: python django

我有一个Django Web服务器,在这台服务器上,我想运行一个更新应用程序数据库的进程(比方说每隔几个小时)。更具体地说,我的Django站点拥有一个从Google趋势中梳理的大量单词列表,我想在服务器上运行一个定期更新该数据的进程。我已经创建了这个过程,可以在我的机器上运行它,我还没有在服务器上,在Django项目中我可以整合这个过程吗?

3 个答案:

答案 0 :(得分:2)

作为Joseph的建议的替代方案,您还可以编写自定义管理命令(当前位于https://docs.djangoproject.com/en/1.7/howto/custom-management-commands/的文档),可以通过manage.py调用。然后可以从cron或类似地调用它。

此外,如果您实施约瑟夫建议使用独立脚本,您需要进行一些设置。几乎就是this stackoverflow question推荐的内容。

答案 1 :(得分:1)

如果此脚本适用于特定应用,则可以创建[app]/scripts/目录。如果它作为整个项目,您可以在项目根目录中创建一个scripts目录。

然后你可以使用任务调度程序,如果你在* nix上使用cron来运行该脚本,但通常是你喜欢的。

答案 2 :(得分:1)

您也可以使用Celery(http://celery.readthedocs.org/en/latest/django/first-steps-with-django.html)来运行定期任务,但cron仍然是最简单的解决方案。

相关问题