我正在使用Drools融合来处理实时事件。每个事件都有一个时间戳字段。 问题是事件有时会出现故障。 drools融合可以处理这种情况,如果是的话怎么样?
由于
答案 0 :(得分:0)
如果A标记为0:00:00且B标记为0:01:00且B到达并且您有规则
rule "A before B"
when
$b: B()
not A( this before $b )
then ... end
它会开火。
您可以将事实插入时间用作时间戳。
将原始时间戳保留为属性。如果一个"情况"也许你会想看看它。发生。这取决于。
添加如果您有最大延迟dt,您可以将所有到达的事件放入"隔离"因为这个延迟。在插入A之前,检查所有其他流(源)以查找A之前的事件B并做出相应的反应。一切都会至少延迟dt做出反应。