首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >流模式下的流口水:卡拉夫中的OutOfMemory

流模式下的流口水:卡拉夫中的OutOfMemory
EN

Stack Overflow用户
提问于 2015-12-19 11:46:19
回答 1查看 91关注 0票数 0

我的DRL文件:

代码语言:javascript
复制
package com.sample.eventmanagement;

import com.sample.eventmanagement.CheckInEvent    
import com.sample.eventmanagement.LateCheckInEvent     

global java.util.concurrent.BlockingQueue lateCheckInEntitiesQueue;    
global java.util.concurrent.BlockingQueue clearingLateCheckInEntitiesQueue;    

declare CheckInEvent    
 @role(event)    
 serialNum : String    
 currentCheckInTime : long    
end    

declare LateCheckInEvent    
 @role(event)    
 @expires( 120m )    
 serialNum : String    
 currentCheckInTime : long    
end    

rule "Raising an Late Check-In Alert"    
when     
    $s1: CheckInEvent( $serialNum : serialNum, $currentCheckInTime: currentCheckInTime ) from entry-point apCheckInStream    
    not( CheckInEvent( serialNum == $serialNum, currentCheckInTime > $currentCheckInTime, this after[ 1s, 360s ] $s1 ) from entry-point apCheckInStream)     
then     
    lateCheckInEntitiesQueue.add($s1);    
end    

rule "Clearing Late Check-In Alert"    
when     
    $s1: LateCheckInEvent( $serialNum : serialNum, $currentCheckInTime: currentCheckInTime ) from entry-point lateApCheckInStream    
    CheckInEvent( serialNum == $serialNum, currentCheckInTime > $currentCheckInTime) from entry-point clearingApCheckInStream    
then     
    System.out.println("Clearing late checkin " + $s1);    
    clearingLateCheckInEntitiesQueue.add($s1.getSerialNum());    
end

在linux中,我在Karaf2.4.3中以流模式运行drools,每5分钟报告10k实体签入泵的内存不足。

我的用例是检测由序列号标识的实体的latecheckinevent。在后期签入事件时,检测到将该事件泵入另一条规则,并在2小时内等待该实体再次正确签入。如果发生这种情况,规则2就会被解雇。

我写查询的方式有问题吗??

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-12-20 14:33:55

事实将保留在您的会话中(在记忆中),直到:

  • 您手动撤回它们:使用delete()retract()
  • 引擎撤回作为其真相维护系统的一部分:即逻辑插入的事实。
  • CEP引擎(融合)检测到,由于所涉及的约束,会话中不再需要标记为@expires的事实。

您的场景似乎不属于这3种情况中的任何一种。

**顺便说一句,我还没有在您的DRL文件中看到一个查询。

希望能帮上忙

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34370346

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档