Under that kind of contention its certainly possible. Use the thread
analyzer to see if the waiting corresponds to the time spent in the
suspected hotspot.

xxxxxxxxxxxxxxxxxxxxxxxx
Scott Stark
Chief Technology Officer
JBoss Group, LLC
xxxxxxxxxxxxxxxxxxxxxxxx

Bill Burke wrote:

I've been optimizing marshalling by extending ObjectInputStream and OutputStream, and overriding readClassDescriptor and writeClassDescriptor, only marshalling the classname rather than the whole shabang. I even keep a local cache of ObjectStreamClasses for readClassDescriptor to lookup at well (a ConcurrentHashMap).

Under load(150 threads), OptimizeIt is still showing readNonProxyDesc as a significant bottleneck (18% in some cases). I'm pretty sure that the problem is in ObjectStreamClass.load(Class, boolean) as there is a global cache for ObjectStreamClass and it is synchronized. Could OptimizeIt be lieing here? Would a simple get of an ObjectStreamClass Map with synchronized access really be such a culprit? To remove this, I have to totally pull and make copies of all affected files to change the cache to a ConcurrentReaderHashMap as non of this stuff is extendible as everything is either package protected or private.






-------------------------------------------------------
This SF.net email sponsored by: Enterprise Linux Forum Conference & Expo
The Event For Linux Datacenter Solutions & Strategies in The Enterprise Linux in the Boardroom; in the Front Office; & in the Server Room http://www.enterpriselinuxforum.com
_______________________________________________
JBoss-Development mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/jboss-development

Reply via email to