On Tue, May 11, 2010 at 2:55 PM, djb <dbrownell83@hotmail.com> wrote:
Hi Wolfgang,
I use one thread per StatefulKnowledgeSession... My machine has 2 cores, but
it will eventually be running on an 8 core beast, so i reckon this was a
good improvement. I was just worried that I wouldn't be able to
simultaneously process multiple K-Sessions, but apparently, Drools doesn't
mind. I'm pretty sure any machine with multiple cores supports parallel
java threads, no?
-----
Regarding my Utilities method, eg. isWithinTimePeriod("20100308",
"20090405", 1, "Y")
I can get about 5ms off by commenting out the eval, so it's not going to be
a big jump even if I fix it, but, well, I am using yyyyMMdd Strings, which
in the method, I sub-stringed, converted to ints, instantiated DateMidnight
objects, and compared using Joda-time daysBetween/monthsBetween/yearsBetween
methods.
My thought was that pre-converting to ints would help, so that each
ClaimLine has year/month/day int variables, and pass them in instead. (i.e.,
Saves 3 String.substring()'s, and 3 Integer.parseInt()). but that actually
slowed it down a few milliseconds. (Maybe passing 6 params instead of 2?!)
I'm comparing two dates by an arbitrary period, like "2 days" or "1 month",
and need the framework of the Gregorian Calendar. So, I don't think I can
do anything about this. 2 months is never guaranteed to be a set number of
milliseconds. It all depends on the claim date, which is fact data, and
therefore variable.