You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-dev@axis.apache.org by "Eric Hansen (JIRA)" <ax...@ws.apache.org> on 2004/12/08 23:28:13 UTC

[jira] Updated: (AXIS-1608) Test case fro comparing Axis 1.2 against Axis 1.1

     [ http://nagoya.apache.org/jira/browse/AXIS-1608?page=history ]

Eric Hansen updated AXIS-1608:
------------------------------

    Attachment: patch

The deserialization process was found under profiling to be heavily impacted by the creation of Text nodes.  Those nodes are created using the owner document on the MessageElement.  That class' method for finding the owner document implemented 3 strategies, the preferred one of which was particularly inefficient.  Specifically, that implementation walked up the tree of nodes all the way to the root document, making it most noticeable in deeply nested documents.  In our tests, a handful of message deserializations resulted in over 6 million calls to walk up the node tree.

The second strategy instead uses the DeserializationContext to locate the owner document with only two method calls.  The attached patch reorders these strategies so that this is the preferred approach, with the one described above being used as a fallback for cases in which no deserialization context is present.  Based on analysis of the source code, however, it wasn't clear that any such cases could actually arise.

> Test case fro comparing Axis 1.2 against Axis 1.1
> -------------------------------------------------
>
>          Key: AXIS-1608
>          URL: http://nagoya.apache.org/jira/browse/AXIS-1608
>      Project: Axis
>         Type: Test
>   Components: Basic Architecture
>     Versions: 1.2RC2
>  Environment: Win XP, 1 Gig Memory, 2.6 Ghz Intel, Axis 1.2 RC2, Axis 1.1 Final
>     Reporter: Venkat Reddy
>  Attachments: Perf.htm, axisperftest.zip, axisperftest.zip, patch, perftest.cs, perftest2.zip, perftest2.zip
>
> My results show that Axis 1.2 RC (Latest CVS) is 1.35 times slower than Axis 1.1. The test is conducted using a simple web service client. Time for the round trip is measured and compared. Client sends a string of about 8 MB size to an RPC/encoded style web service deployed on Tomcat 5.0.25
> Timings (Average over 10 samples):
> ------------------------
> Axis 1.1 : 3891msecs
> Axis 1.2 : 5242 msec
>  -- Venkat

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://nagoya.apache.org/jira/secure/Administrators.jspa
-
If you want more information on JIRA, or have a bug to report see:
   http://www.atlassian.com/software/jira