Re: [soaplite] Serializer performance
- Hi Ian,
> incorporate my changes into the core distribution if people arePeople are interested ;). You can send me your changes offlist if you
want, I would appreciate it.
> These strings are discard when processing the next level of theI'm not sure what do you mean by this. Definitely the serialization
procesure is far from most performant and I will gladly accept any
suggestions that may improve that.
Best wishes, Paul.
--- Ian Burrell <ib@...> wrote:
> After some investigation, I figured out why SOAP::Serializer__________________________________________________
> poorly with large amounts of data. The problem is that "tag"
> creates new strings for each level of nesting when it does:
> sprintf("$prolog$indent<%s%s>%s</%s>", $tag, $tagattrs, $value,
> These strings are discard when processing the next level of the
> Creating and deleting all these strings wastes time. It also means
> perl uses enormous amounts of memory for large trees.
> I have had XML-RPC server processes trying to write out 1000*12
> hashes die with "Out of memory errors" after using 100 MB of
> I came up with a solution that doesn't create the final string
> until the
> top level. The lower level tag and new xmlize_recurse return lists
> strings. I made a subclass of XMLRPC::Serializer that performs
> significantly better that the default. It wouldn't be hard to
> incorporate my changes into the core distribution if people are
> - Ian
> ------------------------ Yahoo! Groups Sponsor
> To unsubscribe from this group, send an email to:
> Your use of Yahoo! Groups is subject to
Do you Yahoo!?
Yahoo! Web Hosting - Let the expert host your site