Details
-
Improvement
-
Status: Resolved
-
Major
-
Resolution: Duplicate
-
1.6.0
-
Ubuntu 10.04 64-bit, Tomcat 6.0.28, Axis 1.6.0
Description
Service function returns which contain (long) arrays of custom objects degrade performance.
Example (POJO):
SomeCustomType[] myFunc() is a lot slower than String[] myFunc()
Reason:
BeanUtil.getBeanInfo() (modules/adb/src/org/apache/axis2/databinding/utils/BeanUtil.java) is called for each element in the output array, even though they are all the same. (According to http://download.oracle.com/javase/6/docs/api/java/beans/BeanInfo.html the result should be cached but this does not seem to be happening.)
Attachments
Attachments
Issue Links
- duplicates
-
AXIS2-4524 Caching BeanInfo in adb module's BeanUtil improves performance
- Resolved
-
AXIS2-4878 Simple BeanInfo cache in BeanUtil.java helped us go from 48 second to 8 second request
- Resolved
-
AXIS2-5118 In high load scenarios with many threads, the call to Introspector.getBeanInfo(Class,Class) causes high synchronization resulting in system stall
- Resolved