[ https://issues.apache.org/jira/browse/AXIS2-5118?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Andreas Veithen reassigned AXIS2-5118: -------------------------------------- Assignee: Andreas Veithen > In high load scenarios with many threads, the call to > Introspector.getBeanInfo(Class,Class) causes high synchronization resulting > in system stall > ------------------------------------------------------------------------------------------------------------------------------------------------- > > Key: AXIS2-5118 > URL: https://issues.apache.org/jira/browse/AXIS2-5118 > Project: Axis2 > Issue Type: Improvement > Components: adb > Affects Versions: 1.5.4 > Environment: Tomcat 7 with axis2 webservices > Reporter: Ronald Brindl > Assignee: Andreas Veithen > Fix For: 1.6.2, 1.7.0 > > Attachments: BeanInfoCache.java, BeanInfoCacheTest.java, BeanUtil.java > > > I have a high load scenario, where a Clustered Web frontend does Webservice > calls to a Backend Webservices. > There are around 200 Threads handling the webservices. > The CPU load of the machine went to near zero. > Using dynatrace, we realized, that all the calls went through > BeanUtils.getPropertyQnameList, which in turn calls > Introspector.getBeanInfo(beanClass, beanClass.getSuperclass()); > This again calls WebAppClassLoader.loadClass(String name, boolean resolve), > which is synchronized. > I fixed this problem by modifying BeanUtil.getPropertyQnameList so that it > caches BeanInfo objects. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa For more information on JIRA, see: http://www.atlassian.com/software/jira --------------------------------------------------------------------- To unsubscribe, e-mail: java-dev-unsubscr...@axis.apache.org For additional commands, e-mail: java-dev-h...@axis.apache.org