循环与django的背景过程

时间:2013-03-31 09:20:55

标签: django background monitoring

我正在用django进行监控工作。该程序需要循环 - 永远坐在后台处理接收数据和更新到数据库。

可以通过编写python脚本来完成工作,并在后台运行,例如,supervisord。但是,我更喜欢django本身的解决方案;这是服务器进程停留在循环中,侦听传入的数据包。

任何建议都是高价值和欣赏。 提前谢谢了。

4 个答案:

答案 0 :(得分:1)

我建议您使用与Django配合使用的Celery,并支持长时间运行的任务以及其他功能。

http://docs.celeryproject.org/en/latest/django/first-steps-with-django.html

http://docs.celeryproject.org/en/latest/getting-started/introduction.html

答案 1 :(得分:1)

如果你觉得Celery有点超大了你的需求,你也可以定义一个永远存在的custom management command并等待你的传入数据包。

答案 2 :(得分:0)

https://github.com/lukedupin/django_posix_spawn

结合使用管理命令,您可以运行不会阻止您的网站的django任务。

答案 3 :(得分:0)

如果您需要一个“ django感知”循环并且已经将celery用于异步任务,则 celery-eternal可能很合适。唯一需要注意的是,您必须使用redis作为芹菜结果后端。