Well said Dave. There are all sorts of ways you can "measure" performance, but it is still hard to compare. For instance, the "Miss Manners" (in drools example) is an traditional test to stress rules engines. The way this is implemented in drools is blindingly fast, relative to other engines (it is an optimised implementation): More on drools miss manners results: http://jira.codehaus.org/browse/DROOLS-235 Miss manners: http://blogs.ittoolbox.com/eai/leadership/archives/002349.asp
Further to this, it is easy to come up with a test to show a particular angle. For instance, I made a simple rule set, and tried it out with 500000 different facts, on my laptop drools can process upwards of 375 000 rules per second when calculating the agenda (while listening to iTunes). What does this number mean? I don't know, but if someone was to write about it in the press I am sure things would get out of hand ! I am sure everyone would rather we get on with the job, working with drools, rather then lots of discussions about this and that (having said that, to answer Felipe's query, we do want to make sure people feel confident). Drools marketing budget: zero dollars (well, Mark will give you a cup of tea if you visit him in the UK). There are some typical things that can cause people to get unstuck, like a combination explosion if there are multiple arguments (if this is combined with a large number of facts, you run up against the laws of physics), or just a huge amount of recursion happening. There is also scaling with the number of rules (not just number of facts), which is quite favourable: see graph of scaling with number of rules (strangely came from an article about Microsofts BRE in BizTalk): http://geekswithblogs.net/images/geekswithblogs_net/cyoung/507/o_brecomp02b. gif Finally, Mark Proctor is currently beavering away to get a tech preview out of the "full" RETE engine (and more) - this will effectively replace the current drools-core. Further to this, the plan is to support alternative algorithms which in some cases can prove optimal. Keep in mind that the drools 2.0 core was built for stability and simplicity, which is has achieved. Bob Mc did an amazing job getting all that going, which is a great foundation to build on. As for the meantime, many people are already using drools, in large and small projects. RETE is only one part of the equation, many "new" rule engines claim to not even want to support RETE - it is to complex an issue to come down to a number or a single fact to latch on to. Simon Harris on drools: (he has contributed a lot since this post): http://www.redhillconsulting.com.au/blogs/simon/archives/000208.html Share your stories ! if you want to help out and are handy with a profiler, find some hot spots: http://drools.org/Hot+Spots At the end of the day drools is completely open, so get involved, have a poke around and see what you can do ! Michael. (about to take off for 2 weeks of sitting around on a beach, and by the pool). -----Original Message----- From: Hamu, Dave [mailto:[EMAIL PROTECTED] Sent: Friday, 4 November 2005 9:41 AM To: user@drools.codehaus.org; Felipe Piccolini Subject: RE: [drools-user] Comment on drools performance. All- Yeah, there are a bunch of misinformed people who have made disparaging remarks about Drools on various blogs. Either they really haven't attempted to work with drools, or they simply read something negative that someone else wrote and accepted it as fact. In many cases, they are writing because they have an agenda to promote some other commercial or open-source product. It is conspicuous that these bloggers rarely have anything by way of contrast or comparison to say that demonstrates that their favorite solution is fundamentally superior. In the rare case, that there are comments that assert that a particular product may be superior to DROOLS, it is rare that they have done a good job of researching the differences. Perhaps the one area that Drools does not compare favorably against commercial products is the lack of a GUI front end and in the lack of an integrated tool to easily manage rules repositories (although that will probably be forthcoming now that DROOLS is part of JBOSS). That said, I would urge people to look at the commercial products and realize that there are certain hoops that you need to jump through to utilize the rule repositories and operate within the UI -- trust someone who has worked with a variety of these products, it's no picnic working with the commercial products, and you typically have a 1/4 M$ entry fee (generally much higher than that) for even a pilot project. That's not to say that certain rules engines might not be a better fit for some projects than others, but I think that the analysis that is needed to compare the advantages and disadvantages of one engine over another is much, much more than what these bloggers have shown. - Dave -----Original Message----- From: Felipe Piccolini [mailto:[EMAIL PROTECTED] Sent: Thursday, November 03, 2005 2:30 PM To: user@drools.codehaus.org Subject: [drools-user] Comment on drools performance. Guys, In this link a guy comment on Drools's performance and some people in my company are worried about the impact this can produce on the application (beacuse of course I introduced Drools on it). I know this is not a real problem, and we are using rule engine in a smart way so working memory and rules are no over loaded, but the top managers need more facts than just my opinion, and Im asking all of you guys about experiences and real comments about this link and about your application performance and scalability using Drools. http://bizrules.eclipsedevelopersjournal.com/some_thoughts_about_drools. htm Thaks a lot. ---------------------- Felipe Piccolini [EMAIL PROTECTED]