Утечка памяти в объектах drool org.drools.core.definitions.rule.impl.RuleImpl и других объектах - PullRequest
0 голосов
/ 25 августа 2018

В моем приложении для потокового вещания я передаю свои правила слюни, которые имеют вид объекта org.kie.api.KieBase . Конкретная реализация этого интерфейса - org.drools.core.impl.KnowledgeBaseImpl . Затем правило выполняется каждым исполнителем для некоторых данных.

У меня есть возможность обновлять мои правила слюни через определенный промежуток времени путем повторной трансляции нового объекта, и я не сопротивляюсь итакже уничтожает старую широковещательную переменную. В этом случае org.drools.core.impl.KnowledgeBaseImpl объект отбирается из памяти, но объекты ниже не освобождаются и получают увеличение каждый раз, когда я ретранслирую свой объект drool, я наблюдал это с помощьюjprofiler Я не мог прикрепить снимок экрана, поэтому я выдал некоторые объекты, которые просочились.

org.drools.core.definitions.rule.impl.RuleImpl;
org.drools.core.rule.ConsequenceMetaData;
org.drools.core.rule.EvalCondition;
org.drools.core.spi.PatternExtractor;
org.drools.compiler.compiler.io.memory.MemoryFolder;
org.drools.compiler.compiler.io.memory.MemoryPath;
org.drools.compiler.compiler.io.memory.MemoryFile;
org.drools.core.rule.GroupElement;

В результате в долгосрочной перспективе я столкнулся с ошибкой памяти.

Мыиспользуя приведенную ниже версию банок.

kie-api-6.3.0.Final.jar
kie-internal-6.3.0.Final.jar
drools-core-6.3.0.Final.jar
knowledge-api-6.3.0.Final.jar
drools-compiler-6.3.0.Final.jar

Заранее спасибо

...