嗨,我有一个需要运行的Django脚本,
我认为命令可以通过bash调用。
事情是脚本在很长一段时间后导致内存泄漏,所以我想创建一个调用Python脚本的外部cron作业。因此,脚本会在重新丢失内存时终止并重新启动。
有人能指出我正确的方向吗?我对这个问题知之甚少,感觉有点失落。
答案 0 :(得分:8)
如果你有一个可执行文件,比如说/home/bin/foobar
,重启脚本,并希望每10分钟运行一次(比如说),那么crontab条目必须是:
*/10 * * * * /home/bin/foobar
表示每隔一小时,每小时,每天都可以分开运行它。
如果您将此(以及您要运行的任何其他定期作业)保存为/home/bin/mycrontab
,那么只需执行crontab /home/bin/crontab
,系统将完成剩下的工作(脚本与您的用户ID一起运行) )。
要查看您已在当前用户ID下安排的定期作业(如果有),请执行crontab -l
。
答案 1 :(得分:2)
你有没有看过custom management commands你的django应用程序?它们的工作方式与manage.py
中的任何其他命令相同,但您可以编写它们。
应用程序可以注册自己的 manage.py的操作。例如, 您可能想要添加manage.py 您正在使用的Django应用程序的操作 分配
要做到这一点,只需添加一个 管理/命令目录到你的 应用。每个Python模块 该目录将被自动发现 并注册为可以的命令 当你跑步时作为一个动作执行 manage.py。
答案 2 :(得分:1)
cron作业的问题在于,无论前一个实例是否完成,它都会经常启动。我建议让你的脚本在一段时间后开始自己的新实例,然后退出。
答案 3 :(得分:1)
我认为http://code.google.com/p/django-cron/应该对你有意义
它是一个独立于平台的django cron-library,在Windows服务器上运行良好