报警系统设计

时间:2011-04-26 07:22:32

标签: database-design alarm

我被要求设计一个警报系统,允许一些用户创建警报,其他人则听取这些警报并做他们需要做的事情。 启动警报的用户希望拥有快捷方式(他们的系统正在运行Windows XP),因此自动收听可能警报的人员会获得相应的信号。

也就是说,如果用户按下组合键,则会自动向安全人员发出请愿。

我曾想过通过创建一个包含系统中所有用户的位置信息的数据库来开发它,并且还会有警报历史记录。我正在考虑为用户启动的每个警报创建一个新行,然后让安全人员查找生成的新警报。所以基本上是这样的:

  • 在ALARMS表中创建新行的快捷方式启动脚本。
  • 安全人员不断检查新警报的Cron或计划任务。

我在设计这种系统时非常新,我在想这是不是一个好方法。另外,如果有人知道如何将脚本的启动分配给Windows下的系统快捷方式,我将不胜感激。

感谢任何帮助,如果需要更多信息,请告诉我。

1 个答案:

答案 0 :(得分:1)

我强烈建议使用消息队列。您可以使用简单的控制台应用程序(在桌面上使用快捷方式等)向队列提交新消息。

将立即通知“收听”系统,并在此时执行相应的操作。

微软的内置队列效果很好:

http://msdn.microsoft.com/en-us/library/system.messaging.messagequeue.aspx

或者你可以使用RabbitMQ,它更强大,但更难开箱即用。

这将节省不断点击数据库进行更新的所有麻烦。

编辑:

当然,您还希望记录数据库中的所有调用,以保存记录。