用于检查数据库对象状态的Django / Python进程

时间:2015-02-25 09:35:27

标签: python django python-3.x celery

我正在构建一个具有发送电子邮件/短信通知功能的django应用程序。这些通知应在后台/异步发送。我已经遇到了芹菜,玩了一下,我认为它非常棒。现在,通知存储在模型中,其中一个字段“status”表示是否已发送通知。我目前需要一种方法来监视数据库表中的通知状态,以检查状态是否为0 - 未发送或1 - 已发送。如果状态为0,则应调用芹菜任务以发送状态为0的通知。那么,监控数据库表的最佳方法是什么?一个守护进程可能吗?

2 个答案:

答案 0 :(得分:0)

您可以使用python' s event scheduler

答案 1 :(得分:0)

您有几种选择。如果您确实想监视该表,请查看celery perioidic tasks,它可以按照定义的时间间隔运行芹菜任务。

您还可以使用post-save signal或覆盖model save method触发模型保存任务。这样您就可以立即触发事件,而不仅限于周期性任务的解析。