axis-java-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Peter Molettiere <pie...@axonstudios.net>
Subject Re: [jira] Commented: (AXIS-1771) Excessive Memory Use During Serialization/Deserialization
Date Wed, 19 Jan 2005 19:29:03 GMT

Yes, I've double checked, and you're right, deserialization does take 
less memory than serialization. I'd suggest though that the numbers for 
serialization could be improved as well, though. I'm not sure what tree 
size you used to generate your 1M ser to 12M deser numbers... I'm 
guessing it was smaller than 5,3. And it doesn't seem to scale any 
differently than deserialization.

 From my new test, replicating your separation of ser and deser:
> Created tree with 5 levels and 3 children at each level
> Axis used 4 MBytes to serialize 230 KBytes, a ratio of 20.0
> Axis used 14 MBytes to deserialize 230 KBytes, a ratio of 64.0
> Created tree with 5 levels and 4 children at each level
> Axis used 33 MBytes to serialize 1 MBytes, a ratio of 29.0
> Axis used 70 MBytes to deserialize 1 MBytes, a ratio of 63.0
> Created tree with 5 levels and 5 children at each level
> Axis used 138 MBytes to serialize 2 MBytes, a ratio of 47.0
> Axis used 269 MBytes to deserialize 2 MBytes, a ratio of 92.0
> Created tree with 5 levels and 6 children at each level
> Axis used 277 MBytes to serialize 7 MBytes, a ratio of 36.0
> Axis used 675 MBytes to deserialize 7 MBytes, a ratio of 89.0
> Created tree with 5 levels and 7 children at each level
> Axis used 570 MBytes to serialize 28 MBytes, a ratio of 20.0
> Out of Memory deserializing 28 MBytes tree.

Imagine a server trying to handle multiple simultaneous requests to 
serialize a 28M tree -- say, 8. That would require over 4.5G of heap, 
something not supportable on any 32 bit JVM. And 8 simultaneous 
requests is not a very high scalability target. Granted there are 
things to do to work around this, like trying to break your request 
into smaller units, etc., but that doesn't change the scaling factor 
for using axis.

If there's anything I can do to help, please let me know!

--
Peter Molettiere
Senior Engineer
Truereq, Inc.
http://www.truereq.com/


Mime
View raw message