1

ルールを drools 5.3.0 から drools 6.1.0 に移行しています

ルールのロードと実行には、KModule.xml の代わりに spring と doo 6 の統合を使用しています。

ここに私たちがやっていることを簡単に示します:

1) ほぼ 200 の Kibase を持つ定義済みのスプリング ベースの Kiebase 構成

http://www.springframework.org/schema/beans/spring-beans-3.1.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring- context-3.1.xsd http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util-3.1.xsd http://www.springframework.org/schema /oxm http://www.springframework.org/schema/oxm/spring-oxm-3.1.xsd

  http://camel.apache.org/schema/spring
  http://camel.apache.org/schema/spring/camel-spring.xsd

  http://drools.org/schema/kie-spring http://drools.org/schema/kie-spring.xsd">

<kie:kmodule id="TEST_KIE_MODULE">

    <kie:kbase name="KIE_BASE_1"  packages="rules.test1"/>
     <kie:kbase name="KIE_BASE_2"  packages="rules.test2"/> 
      .
      .
      .
      .
     <kie:kbase name="KIE_BASE_200"  packages="rules.test2"/>  


<bean id="kiePostProcessor" class="org.kie.spring.KModuleBeanFactoryPostProcessor">
    <constructor-arg name="configFileURL" value=""></constructor-arg>
    <constructor-arg name="configFilePath" value="../TestApp/src/main/resources"></constructor-arg>
</bean>

2)例 20 の KB が少ない場合、512 permgen space で正常に動作していました。KibeBase 構成をいくつか追加したため、ルールのロード中に permgen スペースの問題が発生しました。

3) ここに私たちがやっていることを簡単に示します:

1)最初にKB構成全体をコンパイルし(アプリケーションの起動)、 tocache に保存します。2) ルールの実行中に、特定の入力パラメーターに基づいて修飾された KB を取得し、その KB からすべてのルールを起動します。3) 各 KB には、平均 50 ~ 60 のルールがあります。4) ステップ 1 で、512 の perm gen space の問題が発生しています。

あなたの助けはこれに感謝します。同じ構成が drool 5.3.0 で動作していましたが、drools 6.1.0 で問題が発生しました

4

0 に答える 0