【发布时间】:2014-05-05 11:01:40
【问题描述】:
我想在 python 中设置多个警报。推荐的设置方法是什么?我的用例是N 变量的阈值时间。当当前时间达到阈值时,我想要所有具有该阈值的变量。
这是我的方法:-
threshold_time_list = [get list all times from the DB]
current_time = datetime.now()
[i for i in threshold_time_list if i==current_time]
但这是一种非常低效的方法,因为我可能有 250 多个变量,例如 a/b/c。
而且我必须每秒检查一次这种情况(cronjob)。有没有更好的方法?
我在 SO 上发现,这可以使用线程来完成,并使线程进入睡眠状态 threshod - current_time。但是并行运行 250 个线程又是一个问题,因为我在生产中遇到了 Django 被挂起的问题(不知道为什么),我需要重新启动服务器以使其再次工作。我们假设 Django 可能会退出线程进行处理,因此增加 250 个线程很麻烦。
另外,如果有人知道,为什么 Django 会挂在正在运行的实时产品中,这将是有益的。
这个报警题可以用芹菜做吗?
【问题讨论】:
标签: python django multithreading celery