问题描述
在做一个平台,是这样的project项目出现报警,报警信息保存在alert报警信息表中。以前只要在pc上看就行了,现在要和手机端互联,也就是写脚本隔一段时间刷新表,每次发现数据库alert表中有新的记录时就推送表信息给手机端。如何保证alert表中每次有新的记录都推送给手机端,而不会把之前时间相近的信息重复推送出去呢? 问题补充:也就是说如何判断alert表中报警记录之前已经发送过,能不能不修改表结构,以添加中间表的方式如何设计呢?
解决方案
我以前的做法是加一张表,在里面记录下每次把相关报警事件通知到了哪些关注该事件的模块,这样做很灵活,新加一个模块就登记一个关注事件就好。如果能保证事件是顺序的,也可以记录一个最后通知条目就行,不用逐个记。不过这个表不能太大,要考虑删掉不用管的记录。
解决方案二:
做个触发器,每次有新插入的报警事件时就推送。当然也可以在应用中做这个事。还可以加张表,把推送成功的报警事件记录下来。
时间: 2024-10-30 10:22:46