Loading ...
Sorry, an error occurred while loading the content.

Re: [soaplite] Serializer performance

Expand Messages
  • Paul Kulchenko
    Hi Ian, ... People are interested ;). You can send me your changes offlist if you want, I would appreciate it. ... I m not sure what do you mean by this.
    Message 1 of 2 , Nov 18, 2002
    • 0 Attachment
      Hi Ian,

      > incorporate my changes into the core distribution if people are
      > interested.
      People 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 the
      > tree.
      I'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
      > performs
      > poorly with large amounts of data. The problem is that "tag"
      > method
      > creates new strings for each level of nesting when it does:
      >
      > sprintf("$prolog$indent<%s%s>%s</%s>", $tag, $tagattrs, $value,
      > $tag)
      >
      > These strings are discard when processing the next level of the
      > tree.
      > Creating and deleting all these strings wastes time. It also means
      > that
      > perl uses enormous amounts of memory for large trees.
      >
      > I have had XML-RPC server processes trying to write out 1000*12
      > element
      > hashes die with "Out of memory errors" after using 100 MB of
      > memory.
      >
      > 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
      > of
      > 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
      > interested.
      >
      > - Ian
      >
      >
      >
      > ------------------------ Yahoo! Groups Sponsor
      >
      > To unsubscribe from this group, send an email to:
      > soaplite-unsubscribe@yahoogroups.com
      >
      >
      >
      > Your use of Yahoo! Groups is subject to
      > http://docs.yahoo.com/info/terms/
      >
      >


      __________________________________________________
      Do you Yahoo!?
      Yahoo! Web Hosting - Let the expert host your site
      http://webhosting.yahoo.com
    Your message has been successfully submitted and would be delivered to recipients shortly.