... almost used up 500MB ... Do you or anyone see the same issue?
Well
500mb/72mb string is right about 7 times
Its not unheard of , that during serialization, a string gets copied seven times
So I dont think this is out of the ordinary
Combine that with the caching of the request/response objects (by LWP), now 1.5GB is beginning to seem a bit more expectable :)
but I don't have interest to investigate further -- did I mention I hate SOAP? I do.
XML::Compile::SOAP its based on XML::LibXML which is more memory efficient with its string handling, so I would look into that -- it handles the SOAP spec better than SOAP::Lite
The other thing I might try is to dump the raw request to a file in similar fashion as I showed above, and then use raw LWP::UserAgent or WWW::Mechanize to POST the request from file, and SAVE the response to file, to avoid loading it all in memory
Good luck
I have copy/paste for you :) My soap tips (I hate soap), SOAP::Lite is too much work, SOAP::Simple is less work (but its simple, when stuck go to XML::Compile::SOAP, more verbose, but you want verbose with SOAP ) ... its built on XML::Compile::SOAP/http://perl.overmeer.net/xml-compile/#doc , see my treasure trove of soap examples and lost knowledge,$soap->transport->add_handler("request_send", \&pp_dump );, http://cookbook.soaplite.com/, SOAP endpoint , Re^3: SOAP::Lite login setup, Re: I do not understand how to write a SOAP server., An XML Overview Towards Understanding SOAP, Re^3: SOAP::Lite and custom envelopes, The XML FIles: Understanding XML Namespaces, How to Call a .NET-based Web Service Using the SOAP::Lite Perl Library (2002 )
|