当前位置: 首页 > 面试题库 >

Django-设置预定作业?

荀学文
2023-03-14
问题内容

我一直在使用Django开发网络应用,而我很好奇是否有一种方法可以安排作业定期运行。

基本上,我只想遍历数据库并定期自动进行一些计算/更新,但是我似乎找不到任何有关此操作的文档。

有人知道如何设置吗?

需要说明的是:我知道我可以为此设置cron工作,但我很好奇Django中是否有某些功能可以提供此功能。我希望人们能够自己部署此应用程序,而无需进行大量配置(最好为零)。

我已经考虑过通过简单地检查自上次将请求发送到站点以来是否应该运行某个作业来“追溯地”触发这些操作,但是我希望有一些清洁的方法。


问题答案:

我采用的一种解决方案是这样做:

1)创建一个自定义管理命令,例如

python manage.py my_cool_command

2)在需要的时间使用cron(在Linux上)或at(在Windows上)运行我的命令。

这是一个简单的解决方案,不需要安装沉重的AMQP堆栈。但是,使用其他答案中提到的诸如Celery之类的东西有很好的优势。特别是,使用Celery很好,不必将应用程序逻辑散布到crontab文件中。但是,cron解决方案非常适合中小型应用程序,并且你不需要太多外部依赖项。

编辑:

在更高版本的Windows中,at不建议在Windows 8,Server 2012及更高版本中使用该命令。你可以使用schtasks.exe相同的用途。



 类似资料:
  • 本文向大家介绍Django设置Postgresql的操作,包括了Django设置Postgresql的操作的使用技巧和注意事项,需要的朋友参考一下 这里假定Postgresql数据库已经装好。 首先安装依赖的包 $ sudo yum install python-devel postgresql-devel 如果使用virtualenv,先source一下virtualenv下的“ . bin/a

  • 了解在升级到新版本的 Photoshop 或在不同计算机上安装 Photoshop 时,如何迁移预设、动作、增效工具、首选项和设置。 预设、设置和动作 预设是指在 Photoshop 中应用于图稿的项目和值的集合。您可以随时存储和载入预设,或将其替换为自定值。例如,动作、画笔和键盘快捷键就是预设。Photoshop 附带有预设,但是您也可以自己创建预设。 设置是指当前载入到 Photoshop 中

  • 问题内容: 我想知道Django-Haystack + elasticsearch + pyelasticsearch / elasticsearch- py的最佳组合是什么。我已经在Ubuntu 12.04机器上使用Haystack 2.1.1-dev + elasticsearch 1.1.1 + elasticsearch-py 1.0部署了安装程序。我尝试将Haystack 2.1.0(最

  • 问题内容: 我正在尝试在Django 1.2中使用local_setting ,但对我来说不起作用。目前,我只是将local_settings.py添加到我的项目中。 settings.py local_settings.py 问题在于local_settings.py不会覆盖settings.py。怎么了? 问题答案: 你不仅可以添加local_settings.py,还必须显式导入它。 在最后

  • 本文向大家介绍Django 设定时区,包括了Django 设定时区的使用技巧和注意事项,需要的朋友参考一下 示例 您可以在settings.py文件中设置Django将使用的时区。例子: 这是有效时区的列表 在Windows环境中运行时,必须将其设置为与您的系统时区相同。 如果您不希望Django使用可识别时区的日期时间: Django最佳做法要求使用UTC来在数据库中存储信息: 即使您的网站仅在

  • 我需要进行测试前配置,在运行XCUITest(自动化测试)用例之前进行一次设置, 测试前设置示例:(测试周期需要做一次,以下API的输出用于所有测试用例) 提取访问令牌 从远程配置文件提取URL。 从文档中,我发现协议的方法是进行预测试设置的理想场所。 但是方法没有被调用或执行,下面列出的的所有方法都被正确执行。 我尝试在UITest中设置但没有成功,它显示以下错误 如何执行方法?如有任何帮助,我