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

Re: [soaplite] help with performance issues

Expand Messages
  • Andrew Hicox
    Jay, thank you! I was unaware that one could choose which xml parser package to use. I have the expat based XML::Parser installed already, how do I instruct
    Message 1 of 4 , Jul 10, 2006
    • 0 Attachment
      Jay, thank you!

      I was unaware that one could choose which xml parser package to use.
      I have the expat based XML::Parser installed already, how do I instruct
      SOAP::Lite to use it instead of XML::Parser::Lite?

      thank you again,

      -Andrew

      On Jul 10, 2006, at 11:33 AM, Jay A. Kreibich wrote:

      > On Mon, Jul 10, 2006 at 02:25:32PM -0000, Andrew Hicox scratched on
      > the wall:
      >> Hello everyone:
      >>
      >> I'm running an apache 1.3.* server with mod_ssl, mod_perl &
      >> SOAP::Lite, and I seem to be hitting a wall in terms of performance.
      >> Granted, I'm passing some really complex structures into and out of my
      >> functions, but I'm seeing fairly consistent response times of around 9
      >> and a half seconds, which is just well ... really long.
      >
      >> Doing some further debugging, I'm seeing the delay in the dispatch/xml
      >> parsing stage burried somewhere in SOAP::Lite's guts. That is, I don't
      >> belive that what I'm doing inside the distpatched-to function is
      >> really making that much of an impact in terms of performance. The bulk
      >> of the delay seems to occur between receipt of the request by apache
      >> and the time that the dispatched function is reached.
      >
      > It might be worth testing this. If you can setup a function that
      > just returns it's arguments, you can firmly establish if this is a
      > serializer issue or a function issue.
      >
      >> Performance seems to dramatically increase when I pass structures with
      >> leafs no more than two levels deep. Specifically, structures like
      >> "list of lists" or "hash of lists" seem to cause the most problems. In
      >> any case, changing the structures that the functions pass is kind of
      >> out of the question for me at this point in my project.
      >
      > Which XML parser are you using? XML::Parser or XML::Parser::Lite?
      > If you're using ::Lite (included in the SOAP::Lite distribution),
      > you might want to switch to a full install of XML::Parser with the
      > expat binary libs behind it. I've little experience with the ::Lite
      > version, but given how it works, it would not surprised me if it has
      > performance issues with very large or complex structures.
      >
      > -j
      >
      > --
      > Jay A. Kreibich | CommTech, Emrg Net Tech Svcs
      > jak@... | Campus IT & Edu Svcs
      > <http://www.uiuc.edu/~jak> | University of Illinois at U/C
      >
      >
      Andrew N. Hicox
      Hicox Information Systems LLC
      Manassas, VA USA
      http://hicox.com
      andrew@...
      703-367-9085
    • Jay A. Kreibich
      ... I m fairly sure that if SOAP::Lite can find XML::Parser, it will automatically use it. XML::Parser::Lite is only used as a fall-back. Someone with a
      Message 2 of 4 , Jul 10, 2006
      • 0 Attachment
        On Mon, Jul 10, 2006 at 01:04:28PM -0400, Andrew Hicox scratched on the wall:
        > Jay, thank you!
        >
        > I was unaware that one could choose which xml parser package to use.
        > I have the expat based XML::Parser installed already, how do I instruct
        > SOAP::Lite to use it instead of XML::Parser::Lite?

        I'm fairly sure that if SOAP::Lite can find XML::Parser, it will
        automatically use it. XML::Parser::Lite is only used as a fall-back.

        Someone with a better understanding of the internals of SOAP::Lite
        might chime in on this, however.

        In that case, the only thing would be to verify that XML::Parser and
        expat is installed somewhere SOAP::Lite is going to find it and
        correctly import it. With mod_perl that's sometimes a bit tricky,
        but if things are installed in the default places, it should work.

        -j

        --
        Jay A. Kreibich | CommTech, Emrg Net Tech Svcs
        jak@... | Campus IT & Edu Svcs
        <http://www.uiuc.edu/~jak> | University of Illinois at U/C
      Your message has been successfully submitted and would be delivered to recipients shortly.