axis-java-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From HaoRan Zheng <hrzh...@gmail.com>
Subject Re: [Axis2] Can OM with differed building really be so effective in Axis2?
Date Mon, 04 Apr 2005 07:44:40 GMT
Thanks to all. From your replies, I get a clearer understanding about
"deferred binding". And I totally agree with the memory efficiency
mentioned by Eran. However, I still have not seen the evident reasons
that can enhance the round-trip performance. When a parsed SOAP body
is not necessary in provider, "deferred parsing" is sure to be
efficient. But if the provider needs a parsed one, I can not see the
performance benefits.
 
I think whether the body content will be parsed twice depends on the
provider's implementation. Axis1.x does not have to parse the body
twice if the provider can reuse the pre-parsed results. In fact, from
the class "org.apache.axis.providers.java.RPCProvider" in Axis1.x, we
can see the process well: XML stream ==(SAX API)==> buffered SAX
events ==(replay with XXXDeserializer)==> Java objects. It parsed only
once! And data binding was done at the same time.

So, from the "round-trip" view, "deferred binding" can not achieve
remarkable performance enhancement mostly. Because mostly we need the
parsed SOAP body in provider.

Anyway, I think I got my answer. And I will study the OMPerf test by Eran later.

Thanks again:)

Regards,
HaoRan Zheng

On Apr 4, 2005 1:26 PM, Venkat Reddy <vreddyp@gmail.com> wrote:
> It should read "deferred" and not "differed".
> 
> Regarding performance, i agree with Eran about how Axis engine saves
> time by skipping parsing of body.
> 
> However, the case of round-trip performance includes time spent by the
> service provider in preparing response, which might need to parse the
> body content. Still, I think, if we consider doc/literal service, the
> body content now  parsed only once - that is, by the provider. It
> would have been un-necessary for axis engine to parse the body if the
> service provider has to do it anyway. Though, i'm not sure if Axis 1.2
> engine parses the body content for doc/lit or not.
> 
> -venkat
> 
> 
> On Apr 4, 2005 8:14 AM, HaoRan Zheng <hrzheng@gmail.com> wrote:
> > Thank you Eran, so much!
> >
> > There is another thing I want to make sure. Is "differed building" a
> > clerical error? Should it be "deferred building", or it has different
> > meaning? I see the former expression full of the Axis2 documents, such
> > as architecture guide and AXIOM tutorial.
> >
> > On Apr 4, 2005 10:19 AM, Eran Chinthaka <chinthaka@opensource.lk> wrote:
> > >
> > > Re-sending with [Axis2] prefix
> > > >
> > > > Hi all,
> > > >
> > > > Sorry for bothering everybody. I'm not sure whether this question is
> > > > appropriate for this maillist. If not, please apprise me and I'll
> > > > never commit it again:)
> > > >
> > > > I'm very interested in Axis2 and I know performance is a big goal of
> > > > Axis2. But, I really wonder whether the differed building can help to
> > > > enhance the performance a lot AT SERVER SIDE. My suspicion is based on
> > > > the follow  points:
> > > >
> > > > (a). Almost all the SOAP services need the parsed SOAP envelope (the
> > > > echoXML sample service maybe an exception), so differed building does
> > > > not mean no building. That is to say, parsing and building is
> > > > unavoidable mostly.
> > > > (b). At server side, we won't design any unnecessary arguments. So we
> > > > need parse the SOAP message entirely; even partial parsing won't be
> > > > feasible at server side.
> > > >
> > > > I know it is an improvement to choose the pull-parsing with StAX. At
> > > > least it is one-time parsing while Axis 1.x used the replay mechanism
> > > > to process the pre-parsed SAX events. But I do want to know, how much
> > > > performance enhancement can benefit from the OM with differed
> > > > building? Could anyone explain it to me? Thank you so much!
> > > >
> > > > Regards,
> > > > HR, Zheng
> > >
> > >
> >
>

Mime
View raw message