Re: [soaplite] how slippery is SOAP?
- Hi, Roger!
I don't think it's offtopic and I think your point is absolutely
valid. It might be an issue and I plan to address it in several
different ways. First of all, performance of module itself might be
increased. Second, I plan to address loading time, cutting or
delaying of loading subs/classes that may not be used immediately.
Third. XML message is parsed and validated EVERY time,so why should
we spend time on it, if you already handled such message? SOAP
processor acts as an layer between wire and application, so if we
parse and store XML as a template and then instead of parsing will
use regexpes, we can get five or even tenfold increase for messages
we already parsed. THAT is my goal also. Neither client, nor server
side will change, you'll just specify that you want to allow cache
messages (what algorithm and how many) and SOAP::Lite will do it for
you. My benchmarks show significant benefits, but it was just a
prototype and it's still far from ready-to-use module.
On a side note, according to my tests (and I tested about 20
implementations), there is only 2 times difference between slowest
and average and the same 2 times difference between quickest and
average on my tests thru the Internet. Definitely quickest
implementations put less load on server, but user doesn't see the
difference in most cases. Microsoft's implementations have similar
performance to SOAP::Lite (some of them are little bit quicker and
some are slower), but the difference is about 20%.
Comparing to CORBA, definitely you can get there better performance
for small messages, but when complex data structures are built in
memory (arrays with thousands elements, or complex struct relations)
difference between representation on wire becomes less and less
visible. Partially, performance is the price we pay for flexibility.
That might be the good excercise try to execute SOAP interface with
binary transfer (using Storable or something like that) and check the
Any ideas about improving performance will be greatly appreciated.
Best wishes, Paul.
--- rog2@... wrote:
> Hello again,__________________________________________________
> This is probably more of a SOAP related question (sorry if too off
> topic) but I am just wondering if anyone is using a SOAP layer
> an application and how acceptable the performance is.
> I have a module which I have tested with a preforking SOAP::Lite
> server and also with just a normal Perl script. As far as I can
> a preforking server should achive the best server side performance
> the processes are already loaded.
> When run side by side, the SOAP client is noticably behind in
> performance to that of the normal script just 'using' the module
> (SOAP servers & clients on same machine). This is obviously
> but I didnt expect the lag to be as large.
> What worries me is that the whole SOAP architecture may not really
> fit the bill due to the slower performance speeds - especially in
> something complex like Office2004 (or whatever the .NET release is)
> where hundreds of SOAP requests will be made per second/minute.
> How does SOAP's performance compare to that of DCOM or CORBA? Is
> kind of design approach in an application really warrented?
> well - I think this is really off topic now :-) (sorry)
> Perhaps the best solution would be to somehow use the
> SOAP::Transport::LOCAL when the client and server are both on the
> same machine.
> Does anyone have any views on my babbling?
> many thanks
> Roger Foskett
> To unsubscribe from this group, send an email to:
> Your use of Yahoo! Groups is subject to
Do You Yahoo!?
Yahoo! Auctions - buy the things you want at great prices