[MOBY-dev] surprising results with speed tests:

Mark Wilkinson markw at illuminae.com
Tue Jul 29 12:47:38 UTC 2003


Hi all, 

I've been worried about speed issues for a while, and I finally put my
mind to testing how much of a speed hit we are taking by using SOAP. 
MOBY Central is surprisingly slow - about one query per second.  I had
assumed that this might be due to the overhead of using SOAP::Lite, but
had no evidence of this.

MOBY Central doesn't need a SOAP connection... in fact, nothing we do in
this project now depends on SOAP, except by convention.  (historically,
in the earlier prototype I was using more SOAPy functionality, but that
has gradually been whittled away until we now no longer have an absolute
requirement to use SOAP *at all*).  To see if using SOAP was actually
becoming a burden, this morning I coded an interface to MOBY Central
that used straightforward CGI GET to make the procedure calls.  What
surprised me was how little difference it made to the speed of the
calls!

I ran the testMOBYClientCentral script a few times alternately using the
SOAP and the GET interfaces.  I had full control over everything on the
server because I was running it on my laptop computer without the
network card inserted; the only thing "running" on the machine was the
test script.  The results were:

soap 13.72
cgi 12.56

soap 13.73
cgi 12.37

soap 13.67
cgi 12.38

soap 13.65
cgi 12.37

So apparently we are only taking a 10% speed hit by using SOAP!  I was
stunned at how little overhead it was producing!

So... the speed problem might be coming from the internal XML parser
used by MOBY Central itself.  Over the next couple of weeks I will try
to move MOBY::Central and MOBY::Client::Central over to using
XML::libXML rather than XML::DOM.  Apparently the underlying library is
faster for LibXML.  I'll test it again after that and post the results
to this list.  If at that time the speed hit is proportionately more for
SOAP, I think we should reconsider whether we need to be using it or
not.

Cheers!

M


-- 
Mark Wilkinson <markw at illuminae.com>
Illuminae




More information about the MOBY-dev mailing list