Distributed computing using SOAP. What about speed ?
claird at starbase.neosoft.com
Wed Jul 25 21:06:22 CEST 2001
In article <LBA77.58$bXi.175168000 at news.telia.no>,
Thomas Weholt <thomas at gatsoft.no> wrote:
>( In relation to my previous post about user authentication using SOAP, I
>got another simple question. )
>Does anybody have any thoughts about SOAP, especially SOAPpy ( it looks very
>nice, simple to use ), and potential speed issues? I'm thinking of
>implementing a distributed system where nodes communicate using SOAP.
>There's a clear potential of much traffic among the nodes and I just
>wondered if SOAP is the right protocoll/technology for the job. In my
>project each node will register with a nodemaster ( holds info about running
>nodes, nothing else, will check for availability of registered nodes with a
>given interval too, remove dead ones from list ) and get a list of running
>nodes in return. It will then proceed to query these running nodes in a
>serial manner ( at least to begin with, maybe use a async. approach later )
>about information and parse the result.
>Is SOAP suitable for something like this? It seems like it would be very
>easy to get a system like this up and running. My goal is to make a
>distributed system ala Gnutella, with no central server, just a bunch of
>nodemasters and nodes. I'm interested in other users experience with SOAP,
>with focus on speed of communcation ( speed of network disregarded. I'm only
>interested in impact on speed caused by SOAP itself. ).
>It's also clear that some problems might occur cuz the BaseHTTPServer which
>is used for the most part, have performance issues. Perhaps implementing the
>server using asyncchat etc. would increase performance ?? Why aren't the
>modules allready implemented with these tools available in the standard
>python lib allready, if that's the case?
SOAP can be a pig.
I'm very fond of SOAP. I use it a bunch, and look
forward to doing more. It's gross, though, compared
to, say, CORBA (and my favorite is what this century
On the other hand, lots of people are using SOAP,
it'll get better, and, if performance annoys enough
capable people, someone will invent a reworked
transport layer that solves these problems.
I summarize my answer: design and implement your
project intelligently, and with SOAP. If performance
turns out to be a problem--and you're unlikely to be
certain until it's *quite* a problem--be prepared to
move to a different technology. As unsatisfying as I
imagine you find that answer, it's the best one I
Cameron Laird <claird at NeoSoft.com>
More information about the Python-list