You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-user@axis.apache.org by "Pasca, Romulus" <ro...@bankofamerica.com> on 2004/05/26 00:46:37 UTC

Is it message style MUCH slower then rpc?

Hi guys,

We developed  a set of web services with Axis using RPC style, but we need
better performance so we try a message style approch. We though that using a
message style approch willl get better performance, by avoiding the overhead
of the serialization/deserialization process. Instead of geting better
performance, my first results are disastrous. It looks like  the message
style web service is 6 -20 times slower then the old version using JAXP-RPC
model. 

Does anyone experience the same problem?
Is it really the message style very slow comparing with rpc style?
Is true that in rpc style an SAX parser is using for parsing the SOAP
message, and with message style we need DOM, but is this issue the source
for such a huge loose in performance?
Do I have to make some settings in web container or web app to get better
performance with message style?

Romulus


RE: Is it message style MUCH slower then rpc?

Posted by Anne Thomas Manes <an...@manes.net>.
The MSG provider (WSDD style of MESSAGE) uses DOM and the RPC provider (WSDD
styles of RPC, WRAPPED, or DOCUMENT) uses SAX. The MESSAGE provider
transforms requests into a DOM. The RPC provider uses the serialization
framework to transform requests into Java objects. This accounts for the
very significant difference in performance that you see.

Keep in mind, though, that the RPC provider supports both RPC/Encoded and
Document/Literal messages. In order to make a fair comparison of RPC/Encoded
and Document/Literal performance, you should compare WSDD style RPC with
WSDD style WRAPPED or DOCUMENT. Here you should see very little difference
in performance.

Anne

-----Original Message-----
From: Nelson Minar [mailto:nelson@monkey.org] 
Sent: Thursday, May 27, 2004 8:44 PM
To: axis-user@ws.apache.org
Subject: Re: Is it message style MUCH slower then rpc?

>It looks like the message style web service is 6 -20 times slower
>then the old version using JAXP-RPC model.

I can't answer your questions, but I'd be very interested to know
more. What kind of data are you passing back and forth?

It should be straightforward to make a performance test that was the
exact same service as document/literal and rpc/encoded and compare
how fast they run.

>Is it really the message style very slow comparing with rpc style?

I don't see why it should be.

>Is true that in rpc style an SAX parser is using for parsing the SOAP
>message, and with message style we need DOM, but is this issue the source
>for such a huge loose in performance?

I don't know, but would like to know the answer myself.

>Do I have to make some settings in web container or web app to get better
>performance with message style?

You want to make sure sendXsiTypes and sendMultiRefs are both turned
off in the configuration of Axis. But come to think of it, those
parameters may not be relevant to document/literal.


Re: Is it message style MUCH slower then rpc?

Posted by Nelson Minar <ne...@monkey.org>.
>It looks like the message style web service is 6 -20 times slower
>then the old version using JAXP-RPC model.

I can't answer your questions, but I'd be very interested to know
more. What kind of data are you passing back and forth?

It should be straightforward to make a performance test that was the
exact same service as document/literal and rpc/encoded and compare
how fast they run.

>Is it really the message style very slow comparing with rpc style?

I don't see why it should be.

>Is true that in rpc style an SAX parser is using for parsing the SOAP
>message, and with message style we need DOM, but is this issue the source
>for such a huge loose in performance?

I don't know, but would like to know the answer myself.

>Do I have to make some settings in web container or web app to get better
>performance with message style?

You want to make sure sendXsiTypes and sendMultiRefs are both turned
off in the configuration of Axis. But come to think of it, those
parameters may not be relevant to document/literal.