大量のルールがあり、実行するとき
KieSession ksession = kc.newKieSession(sessionName);
時間がかかる。キーセッションを再利用したいと思います。どうすればそれが可能ですか?私の入力レコードは一度に 1 つずつ来て、バッチではありません。
利用できるドキュメントはほとんどありません。.
大量のルールがあり、実行するとき
KieSession ksession = kc.newKieSession(sessionName);
時間がかかる。キーセッションを再利用したいと思います。どうすればそれが可能ですか?私の入力レコードは一度に 1 つずつ来て、バッチではありません。
利用できるドキュメントはほとんどありません。.
これがサンプルコードです。
これは他の誰かにとって役立つかもしれないと思います。大きなバッチを処理する必要がある場合、可能であれば一度に多数のレコードを処理するのが最善の方法であることがわかりました。(dispose を呼び出さないでください!!) セットが完了したら、ファクト ハンドルを削除するだけです。
List<FactHandle> fhs = new ArrayList<FactHandle>();//store the fact handles
//for removing later
.....in a loop add one or multiple records
....
fhs.add(ksession.insert(prcRec));
...................................
for (FactHandle factHandle : fhs) {
ksession.delete(factHandle);
}//Delete the fact handles so that next batch can be handled