Garbage collection 高GC时间的口水

Garbage collection 高GC时间的口水,garbage-collection,drools,Garbage Collection,Drools,在我的例子中,我想使用drools来处理实时流(来自卡夫卡)消息作为事实 在准备工作中,我使用以下带有jvm参数的代码(-Xms1500m-Xmx1500m-Xmn500m,jdk 1.8)测试drools(版本7.5.0.Final): 测试结果为(应用程序运行超过24小时): 从监视器获取,我发现GC太高,我猜事实是位于工作内存中的引用,因此在主要GC收集之前无法释放 是否有任何方法可以明确地释放事实?或者如何降低GC集合(主要GC)?如果事实是事件,您可以利用for events从会话中

在我的例子中,我想使用drools来处理实时流(来自卡夫卡)消息作为事实

在准备工作中,我使用以下带有jvm参数的代码(-Xms1500m-Xmx1500m-Xmn500m,jdk 1.8)测试drools(版本7.5.0.Final):

测试结果为(应用程序运行超过24小时):

从监视器获取,我发现GC太高,我猜事实是位于工作内存中的引用,因此在主要GC收集之前无法释放


是否有任何方法可以明确地释放事实?或者如何降低GC集合(主要GC)?

如果事实是事件,您可以利用for events从会话中自动删除事实

如果没有,你的会话将越来越大。Drools需要将所有事实都存储在内存中才能工作。您可以通过以下选项之一手动从会话中撤回事实:

  • 通过使用从规则的右侧开始
  • 通过使用从应用程序中删除
希望有帮助