gpt4 book ai didi

java - 如何设计实时警报系统?

转载 作者:搜寻专家 更新时间:2023-10-31 19:57:02 25 4
gpt4 key购买 nike

我有一个要求,当数据库中的记录在指定的时间间隔内没有更新/更改时,我必须发送警报。例如,如果收到的采购订单未在一小时内处理,则应将提醒发送给送货经理。

提醒/警报应该准确地在间隔(包括秒)发送。如果最后修改时间是 13:55:45 意味着,应该在 14:55:45 触发警报。可能需要跟踪数百万行。

简单的方法可以是实现自定义调度程序,所有记录都将注册到它。但是应该每秒轮询数据库以查找更改,这会导致性能问题。

更新:

另一种基本方法是为每条记录创建一个线程并使其 hibernate 1 小时(或)使用一些具有超时的排队概念。但它仍然存在性能问题

有没有更好的方法来实现相同的想法?

最佳答案

可能使用内部 JMS 队列会是更好的解决方案 - 例如,您可能想使用计划消息功能 http://docs.jboss.org/hornetq/2.2.2.Final/user-manual/en/html/examples.html#examples.scheduled-message与 hornetq。

您可以要求经纪人在正好 1 小时后发布警报消息。另一方面,在处理某些交易 Activity 期间,您可以手动删除此消息,这意味着交易 Activity 已无误处理。

关于java - 如何设计实时警报系统?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11753592/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com