2012-01-06 94 views
2

我有一个自定义的django命令,它读取和RSS,查找新的提要,如果找到新的提要,我将它推送到我的webapp托管Heroku(heroku.com)。这种检查需要尽可能地完成,以便能够尽可能快地获得新的订阅源,比如说,每一秒。什么时候运行并中断django管理命令

这两个问题我有是:

  • 由于这个程序将只由少数人(2-3)中使用,则必须将该命令仅如果这些人是应用程序内部,运行我不会超载服务器作业。
  • 一旦用户离开应用程序(可能是他们刚刚关闭了应用程序,或者他们有一定的不活动时间,即没有点击任何内容),该命令必须停止检查RSS。

我的问题是,

  • 我应该在哪里运行的命令?直接从一个角度看,从一个信号?
  • 一旦用户离开应用程序,我怎么能中断这样的命令?

预先感谢任何帮助:)

回答

0

你可以使用request-finished信号。在信号处理程序中,您可以运行celery任务,所以用户没有等待rss服务器请求结束