Now I have a very serious performance problem with the way (the "X/Y" way) I
compose the string id when using Pojo cache.
I have one PojoCache instance globally shared by 20 threads in websphere, but those 20
threads are mostly in the "waiting" state by what I see with JProfiler, the
hotspots are:
- 6.2% - 30,415 s - 9,479 hot spot inv.
org.jboss.cache.util.concurrent.locks.OwnableReentrantLock.tryLock
- 2.0% - 10,057 s - 5,065 hot spot inv. org.jboss.cache.mvcc.MVCCNodeHelper.acquireLock
(line: 259)
While the threads are waiting, the CPU usage is nearly zero (there are some daemon threads
running periodically in websphere).
It is not a real deadlock because all processing eventually finished without. What I
don't understand is that why in majority of the time those threads are waiting for
each other but no one is really busy?
No matter how I compose the key, I would expect at least one thread is busy at a certain
moment.
View the original post :
http://www.jboss.org/index.html?module=bb&op=viewtopic&p=4244944#...
Reply to the post :
http://www.jboss.org/index.html?module=bb&op=posting&mode=reply&a...