3

我正在用 django 做监控工作。该程序需要在后台永久循环以处理接收数据和更新数据库。

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

任何建议都将具有很高的价值并受到赞赏。提前谢谢了。

4

4 回答 4

2

如果您觉得 Celery 对于您的需求来说有点过大,您还可以定义一个自定义管理命令,该命令永远存在并等待您的传入数据包。

于 2013-03-31T23:16:05.147 回答
1

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

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

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

于 2013-03-31T14:26:22.930 回答
0

https://github.com/lukedupin/django_posix_spawn

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

于 2015-09-11T21:28:53.730 回答
0

如果您需要一个“django-aware”循环并且已经使用 celery 执行异步任务,那么 celery-eternal可能是一个不错的选择。唯一需要注意的是,您必须使用 redis 作为 celery 结果后端。

于 2020-08-18T16:04:04.153 回答