【发布时间】:2014-10-07 07:31:48
【问题描述】:
我们正在使用 drools 对大批量数据执行规则。
通过大批量数据,我的意思是我们将大量 (5000-10000) 胖物体加载到口水中。
我们观察到 JVM 堆的持续上升和规则执行开始下降。
我们是否推荐了 JVM 选项或 API 来释放工作内存。
我正在使用 statefulKnowldegeSession 并在 fireRules() 之后调用 dispose()。
【问题讨论】:
-
通常在这种情况下,变慢的不是规则执行。相反,插入新事实所需的时间更长。需要考虑的是所有这些事实是否都是新的。你能插入一组基本事实并将它们保存在工作记忆中吗?插入/修改少量附加事实通常非常快。
标签: java performance memory-management drools jvm-arguments