There is no out of the box way to improve that, beyond just partitioning your rulebases yourself.

If you would like to get involved in R&D we can do lazy network building and try pushing unused parts of the rule network to disk.

Mark
On 26/04/2011 12:05, Shebs, Liron wrote:

Hello All,

 

I’m working at HP Software R&D and we are considering using drools in our product.

Benchmarking tests showed that running 10,000 rules consumes 382mb.

This is too high for our system requirements, and we would like to know how we can improve it.

Technical details:

-      Drools version: 5.1 with default configuration.

-      All rules look like this:

 

rule "status-Fixed-Open"

               when

                             event : FieldChangedEvent(fieldName == "status", oldValue == "Fixed");

                             entity : Entity(entityType == "mock-entity");

                             eval(((String) entity.getFieldValue("status")).equals("Open"));

               then                         

                  do Something…

end

 

-      Loading code:

 

KnowledgeBuilder knowledgeBuilder = KnowledgeBuilderFactory.newKnowledgeBuilder();

for(all resources)

{

knowledgeBuilder.add(resource, ResourceType.DRL);

}

knowledgeBase = KnowledgeBaseFactory.newKnowledgeBase();

knowledgeBase.addKnowledgePackages(knowledgeBuilder.getKnowledgePackages());

 

Any insights are most appreciated.

 

Thank You,

Liron, HP Software R&D

 

 

 

_______________________________________________ rules-users mailing list rules-users@lists.jboss.org https://lists.jboss.org/mailman/listinfo/rules-users