[rules-users] Multi-threading inefficiency caused by static class synchronization?
ping
jinpingv at hotmail.com
Mon Dec 10 15:11:34 EST 2012
hi,
I'm new to Drools and I'm doing some performance benchmark to see if I can
scale up a StatelessSession engine. I did the benchmark on a 8 core machine
but the results shows the engine can only take advantage of 1.5 cores at any
time.
here is my tests:
1. create a KnowledgeBase
2. started multiple threads (I tried 4/8/16 threads) running same loop:
create a stateless session from KnowledgeBase and create a new fact, then
insert the fact into the session.
After running the test for multiple times I found that it can only utilize
at most 1.5 cores at the same time.
I also found that most of time threads were blocked by static class locks
like:
public static synchronized ProcessRuntimeFactoryService
getProcessRuntimeFactoryService()
Anyone has experience scaling up a stateless drools engine?
Thanks a lot.
-Ping
--
View this message in context: http://drools.46999.n3.nabble.com/Multi-threading-inefficiency-caused-by-static-class-synchronization-tp4021160.html
Sent from the Drools: User forum mailing list archive at Nabble.com.
More information about the rules-users
mailing list