[jboss-jira] [JBoss JIRA] Created: (JBRULES-959) Investigate performance delta with MR3 and 3.0.6

Michael Neale (JIRA) jira-events at lists.jboss.org
Thu Jun 28 22:38:01 EDT 2007


Investigate performance delta with MR3 and 3.0.6
------------------------------------------------

                 Key: JBRULES-959
                 URL: http://jira.jboss.com/jira/browse/JBRULES-959
             Project: JBoss Rules
          Issue Type: Task
      Security Level: Public (Everyone can see)
          Components: All
    Affects Versions:  4.0.0.MR3
            Reporter: Michael Neale
         Assigned To: Michael Neale


// Rule execution time test
// I give the DRL one fact of class BOBOMessage (made final due to Michael's suggestion)
// The "message" member of my BOBOMessage fact contains a random combination of the keywords the rule is designed to match
// A random BOBOMessage like that is generated before every execution
 
// MR3's performance: 11:43:01,135 INFO  [RuleLoadBean] Average rule execution time in ms: 2.3991
 
// What is measured:
ruleBase = rsl.getGroupRuleBase(group); // That retrieves the RuleBase from the cache
 
StatelessSession session = ruleBase.newStatelessSession();
session.execute(toBeAsserted.get(group.getId()).toArray());
 
// 3.0.6's performance: 12:09:40,446 INFO  [RuleLoadBean] Average rule execution time in ms: 0.7726
 
// What is measured:
 
ruleBase = rsl.getGroupRuleBase(group); // That retrieves the RuleBase from the cache
 
WorkingMemory wm = ruleBase.newWorkingMemory();
for (Iterator j = toBeAsserted.get(group.getId()).iterator(); j.hasNext();)
	wm.assertObject(j.next());
wm.fireAllRules();
 
// The DRL:
 
package com.smsc.mitto.rules
 
import com.smsc.mitto.rules.client.BOBOMessage;
import java.lang.String;
 
rule "14"
salience 0
activation-group "14"
when
     m : BOBOMessage( message matches ".*BOBO.*")
then
  System.out.println( "BOBO WAS SEEN" );
  System.out.println( "BOBO WAS REALLY SEEN, DUDE" );
  drools.setFocus( "17" );
end
 
 
rule "17"
salience -20
agenda-group "17"
activation-group "17"
when
     m : BOBOMessage( message matches ".*CACA.*")
then
  System.out.println( "CACA WAS SEEN" );
  drools.setFocus( "19" );
end
 
 
rule "19"
salience -10
agenda-group "19"
activation-group "19"
when
     m : BOBOMessage( message matches ".*BABA.*")
then
  System.out.println( "BABA WAS SEEN" );
  drools.setFocus( "21" );
end
 
 
rule "19false"
salience -20
agenda-group "19"
activation-group "19"
when
  eval(true)
then
  drools.setFocus( "21" );
end
 
 
rule "21"
salience -20
agenda-group "21"
activation-group "21"
when
     m : BOBOMessage( message matches ".*BIBI.*")
then
  System.out.println( "BIBI WAS SEEN" );
  drools.setFocus( "23" );
end
 
 
rule "21false"
salience -30
agenda-group "21"
activation-group "21"
when
  eval(true)
then
  drools.setFocus( "23" );
end
 
 
rule "17false"
salience -30
agenda-group "17"
activation-group "17"
when
  eval(true)
then
  drools.setFocus( "23" );
end
 
 
rule "23"
salience -30
agenda-group "23"
activation-group "23"
when
     m : BOBOMessage( message matches ".*POOP.*")
then
  System.out.println( "POOP WAS SEEN" );
  drools.setFocus( "25" );
end
 
 
rule "23false"
salience -40
agenda-group "23"
activation-group "23"
when
  eval(true)
then
  drools.setFocus( "25" );
end
 
 
rule "14false"
salience -10
agenda-group "14"
activation-group "14"
when
  eval(true)
then
  drools.setFocus( "25" );
end
 
 
rule "25"
salience -10
agenda-group "25"
activation-group "25"
when
     m : BOBOMessage( message matches ".*SUPER.*")
then
  System.out.println( "SUPER WAS SEEN" );
end

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.jboss.com/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        



More information about the jboss-jira mailing list