ws-sandesha-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Benjamin Schmeling <Benjamin_Schmel...@gmx.de>
Subject Re: Oneway ws and reliability
Date Tue, 13 Dec 2005 21:35:16 GMT
Hi,

I am sorry but what I want to do is not really a real world sample. I 
try to analyse howto make sequences of (oneway and twoway) webservices 
reliable (in order, exactly once). In such sequences "normal" webservice 
calls, which can be sent to different web services, should be made 
reliable.
Therefore I want to separate the reliability logic from the ordinary web 
service calls by aspect orientation. I wrote a function which takes the 
soap message of the called web service and packs it into a sequence 
(using sandesha). Because one web service result could be the input for 
the next, I have to call my function one time per web service call. If 
two calls are from the same webservice they are put into the same 
sequence. If they are not from the same webservice, I have to use two 
separate sequences according to Jaliyas last mail, as also when the 
webservices are on different maschines.

Now another question, if I have two sequences where two oneway 
webservices (on different maschines) are called, I can guarantee with ws 
reliable messaging that they are delivered in the given order. But I can 
not gurantee that they are executed by the application in the same 
order. Is that right?

Thanks,

Benjamin

> Benjamin
>
> As long as the services are on the same URL then you can do it. 
> However, the spec was not designed to "application level" delivery 
> assurances, which is what this looks like. What is the scenario that 
> requires this behaviour? I'm interested because I'm the chair of the 
> OASIS WS-RX TC that is standardising this, and the issue has had some 
> discussion, so real world scenarios would be useful.
>
> Paul
>
> On 12/12/05, *Benjamin Schmeling* <Benjamin_Schmeling@gmx.de 
> <mailto:Benjamin_Schmeling@gmx.de>> wrote:
>
>     This example does not show what I mean. There are two Webservices but
>     they are not on the same sequence because there are two
>     SandeshaContexts. They will arrive in the given order, but there are
>     created two sequences. Does this mean that you can not take place two
>     different webservices at the same location on one WS Reliable
>     Messaging
>     sequence?
>
>     Thanks,
>
>     Benjamin
>
>     >Hi,
>     >
>     >I am sorry that I have misunderstood your question :(
>     >When there are multiple web services in a single machine, and if
>     they all
>     >in a single container and use one RM-EndpointManager, we can put
>     all these
>     >messages under one sequence from a given client.
>     >
>     >Please see the  testEchoPing() method in the TCScenarioTest class
>     under
>     >test folder.
>     >This test, send several messages to two services using the same
>     sequence
>     >and they get invoked with the respective orders in the server side.
>     >
>     >Thanks,
>     >
>     >Jaliya
>     >
>     >
>     >----- Original Message -----
>     >From: <jaliya@opensource.lk <mailto:jaliya@opensource.lk>>
>     >To: "Benjamin Schmeling" < Benjamin_Schmeling@gmx.de
>     <mailto:Benjamin_Schmeling@gmx.de>>
>     >Cc: <sandesha-dev@ws.apache.org <mailto:sandesha-dev@ws.apache.org>>
>     >Sent: Thursday, December 01, 2005 9:50 PM
>     >Subject: Re: Oneway ws and reliability
>     >
>     >
>     >
>     >
>     >>Hi,
>     >>
>     >>WS-RM guarantees delivery of messages from one endpoint to the
>     other.
>     >>
>     >>
>     >Mainly
>     >
>     >
>     >>between endpoint managers. So there is no way that we can put
>     messages
>     >>
>     >>
>     >going
>     >
>     >
>     >>to different endpoints into a single sequence. This is not what
>     WS-RM for
>     >>and rather is useful when we have many massages to the same endpoint
>     >>
>     >>Thanks,
>     >>
>     >>Jaliya
>     >>
>     >>----- Original Message -----
>     >>From: "Benjamin Schmeling" <Benjamin_Schmeling@gmx.de
>     <mailto:Benjamin_Schmeling@gmx.de>>
>     >>Cc: <sandesha-dev@ws.apache.org <mailto:sandesha-dev@ws.apache.org>>
>     >>Sent: Thursday, December 01, 2005 4:39 PM
>     >>Subject: Re: Oneway ws and reliability
>     >>
>     >>
>     >>
>     >>
>     >>>Hi,
>     >>>concerning different endpoint it is not possible to put them in one
>     >>>sequence. But what is when you have calls on different web
>     services on one
>     >>>maschine. Is it possible to put them all in one sequence and
>     how is it
>     >>>done in sandesha? I tried it out but got an ERROR: MESSAGE IS
>     NULL IN
>     >>>ResponseSeqHash.
>     >>>
>     >>>Thanks,
>     >>>
>     >>>Benjamin
>     >>>
>     >>>
>     >>>
>     >>>>Hi,
>     >>>> IMHO it is not a feature that should be covered by WS-RM, it
>     should be a
>     >>>>feature of the underlying SOAP engine.
>     >>>>For RM all these messages are different sequence if they are
>     going to
>     >>>>different endpoints. So if we need to send one message to 2000
>     stores
>     >>>>then it will be a 2000 sequence and lot of additional
>     messages. We can
>     >>>>use RM but there is are additional overhead involve in it.
>     However it the
>     >>>>scenario is such that we need to send 2000 messages to same
>     recipient,
>     >>>>then RM is for that and will serve well.
>     >>>> Thanks,
>     >>>> Jaliya
>     >>>>
>     >>>>    ----- Original Message -----
>     >>>>    *From:* IVO <mailto: spartan2iv@yahoo.com
>     <mailto:spartan2iv@yahoo.com>>
>     >>>>    *To:* jaliya@opensource.lk <mailto:jaliya@opensource.lk>
>     <mailto:jaliya@opensource.lk <mailto:jaliya@opensource.lk>>
>     >>>>    *Sent:* Wednesday, November 30, 2005 3:04 AM
>     >>>>    *Subject:* Re: Oneway ws and reliability
>     >>>>
>     >>>>    Hi,
>     >>>>    Thx for the response. However i think the Spec of WS-RM
>     had to
>     >>>>    think about reliably talking to many WS with same message
>     without
>     >>>>    any interation of sequences. I tried to loop 2000 times
>     for 2000
>     >>>>    stores and for each store i had just to change the URL but
>     same
>     >>>>    message. Not a a good approach....
>     >>>>
>     >>>>    */jaliya@opensource.lk <http://opensource.lk>
>     <mailto:jaliya@opensource.lk <mailto:jaliya@opensource.lk>>/* wrote:
>     >>>>
>     >>>>        Hi,
>     >>>>
>     >>>>        Hm.. interesting scenario..Please see my comments below.
>     >>>>
>     >>>>        Thanks,
>     >>>>
>     >>>>        Jaliya
>     >>>>
>     >>>>
>     >>>>
>     >>>>        ----- Original Message -----
>     >>>>        From: IVO
>     >>>>        To: Benjamin Schmeling ; sandesha-dev@ws.apache.org
>     <mailto:sandesha-dev@ws.apache.org>
>     >>>>        Sent: Tuesday, November 29, 2005 2:50 PM
>     >>>>        Subject: Re: Oneway ws and reliability
>     >>>>
>     >>>>
>     >>>>        Hi,
>     >>>>        i have a project that requires the use of either a message
>     >>>>        broker or web
>     >>>>        services.
>     >>>>        HINT: Intend to transfer all daily sales of burger
>     king stores to
>     >>>>        headquarter. this implies an average of 2000 sto res
>     connect
>     >>>>        to headquarter
>     >>>>        with 2hours window of transaction. also the possibility of
>     >>>>        burger-king
>     >>>>        headquarter to broadcast price changes to all stores. With
>     >>>>        message brokers
>     >>>>        this is possible like JMS or propriatory ones using
>     publishing
>     >>>>and
>     >>>>        subscription.
>     >>>>        Have made studies on WS-RM, WS-Security, WS-Conversation,
>     >>>>        WS-Callback, and
>     >>>>        WS-Policy and thought web services with their
>     interop.. they
>     >>>>        are better
>     >>>>        than JMS and other MOM. I have had a look on Sandesha as
>     >>>>        regards to WS-RM.
>     >>>>        It was quite interesting. My qeuestions after reading
>     this
>     >>>>        mail of using
>     >>>>        sequences in talking to three WS:
>     >>>>        1. Having the same messages for web service A, B, and C is
>     >>>>        there a means
>     >>>>        to braodcast the messages without any interation in
>     >>>>        application level but
>     >>>>        by sim ply listing the endpoints?
>     >>>>
>     >>>>        Sandesha does not have a message broadcasting
>     machanism at the
>     >>>>        transport
>     >>>>        level and it is not a requirement of the WS-RM specs.
>     For this
>     >>>>        functionality you have to use some mediation service.
>     Apache
>     >>>>        Synapse will
>     >>>>        do this soon :)
>     >>>>
>     >>>>        2. Has Sandesha some implementations of load balance?
>     BEA uses
>     >>>>        Buffers.
>     >>>>        Say 2000 stores all talk simultaneously to one WS.
>     >>>>
>     >>>>        Sandesha does not have a built in load balancing
>     mechanism.
>     >>>>        But it may be
>     >>>>        able to handle the load as long as Servlet container
>     and Axis
>     >>>>        is handling
>     >>>>        the load.
>     >>>>
>     >>>>        3. Has Sandesha in built tools for monitoring the flow of
>     >>>>        information at
>     >>>>        transport level or do i have define my handlers for that?
>     >>>>
>     >>>>        You can add handler to both request and response flows to
>     >>>>        monitor the
>     >>>>        message flow.
>     >>>>
>     >>>>        4. What about WS-Conversation and Callback?
>     >>>>        Implementation of WS-SecCon is still not complete
>     >>>>
>     >>>>        thanks
>     >>>>
>     >>>>
>     >>>>        Benjamin Schmeling wrote:
>     >>>>        Hi,
>     >>>>
>     >>>>        imagine the scenario, described in the reliable messaging
>     >>>>        specification.
>     >>>>        Now lets assume the webservices are all oneway and the
>     second
>     >>>>        message
>     >>>>        goes to a third endpoint. I know the specification
>     suppor ts
>     >>>>        only two
>     >>>>        endpoints, but is there a possibility to do the following:
>     >>>>
>     >>>>        1.) call webservice A (at http:/abc.org)
>     >>>>        2.) call webservice B (at http:/cde.org)
>     >>>>        3.) call webservice C (at http:/abc.org)
>     >>>>
>     >>>>        I could do this with 3 separate sequences. At every
>     end of one
>     >>>>        sequence
>     >>>>        endSequence() is called in Sandesha. Can I make the
>     conclusion
>     >>>>        that
>     >>>>        after calling endSequence() the message to all
>     webservices in the
>     >>>>        sequence are already successfully delivered?
>     >>>>
>     >>>>        For example:
>     >>>>        new SandeshaContext()
>     >>>>        call webservice A (at http:/abc.org)
>     >>>>        endSequence()
>     >>>>        // /message to A has been delivered already at this
>     point of
>     >>>>        code?/
>     >>>>        new SandeshaContext()
>     >>>>        call webservice B (at http:/cde.org)
>     >>>>        ....
>     >>>>        ...
>     >>>>        ..
>     >>>>
>     >>>>        Thanks,
>     >>>>
>     >>>>        Benjamin
>     >>>>
>     >>>>
>     >>>>
>     >>>>
>     >>>>        ---------------------------------------------------------------------
>
>     >>>>        To unsubscribe, e-mail:
>     sandesha-dev-unsubscribe@ws.apache.org
>     <mailto:sandesha-dev-unsubscribe@ws.apache.org>
>     >>>>        For additional commands, e-mail:
>     sandesha-dev-help@ws.apache.org
>     <mailto:sandesha-dev-help@ws.apache.org>
>     >>>>
>     >>>>
>     >>>>
>     >>>>
>     >>>>
>     >>>>
>     >>>>        --------------------------------------------------------------------------------
>
>     >>>>        Yahoo! Music Unlimited - Access over 1 million songs.
>     Try it
>     >>>>free.
>     >>>>
>     >>>>        ---------------------------------------------------------------------
>
>     >>>>        To unsubscribe, e-mail:
>     sandesha-dev-unsubscribe@ws.apache.org
>     <mailto:sandesha-dev-unsubscribe@ws.apache.org>
>     >>>>        For additional commands, e-mail:
>     sandesha-dev-help@ws.apache.org
>     <mailto:sandesha-dev-help@ws.apache.org>
>     >>>>
>     >>>>
>     >>>>
>     >>>>
>     >>>>    SUMELONG IVO
>     >>>>    UNIVERSITY OF DUISBURG-ESSN
>     >>>>    DEPARTMENT OF COMPUTER SCIENCE AND
>     >>>>    COMMUNICATION ENGINEERING
>     >>>>    SCHEMKESWEG 41
>     >>>>    47057 DUISBURG
>     >>>>    Germany
>     >>>>    HOME.: 00492033948762
>     >>>>     MOBILE.00491797751042
>     >>>>    EMAIL.: spartan2iv@yahoo.com <mailto:spartan2iv@yahoo.com>
>     <mailto:spartan2iv@yahoo.com <mailto:spartan2iv@yahoo.com>>
>     >>>>
>     >>>>    ------------------------------------------------------------------------
>
>     >>>>    Yahoo! Music Unlimited - Access over 1 million songs. Try
>     it free.
>     >>>>
>     >>>><
>     http://pa.yahoo.com/*http://us.rd.yahoo.com/evt=36035/*http://music.yahoo.com/unlimited/>
>     >>>>
>     >>>>
>     >>>>
>     >>>---------------------------------------------------------------------
>
>     >>>To unsubscribe, e-mail: sandesha-dev-unsubscribe@ws.apache.org
>     <mailto:sandesha-dev-unsubscribe@ws.apache.org>
>     >>>For additional commands, e-mail:
>     sandesha-dev-help@ws.apache.org
>     <mailto:sandesha-dev-help@ws.apache.org>
>     >>>
>     >>>
>     >>>
>     >>>
>     >>---------------------------------------------------------------------
>     >>To unsubscribe, e-mail: sandesha-dev-unsubscribe@ws.apache.org
>     <mailto:sandesha-dev-unsubscribe@ws.apache.org>
>     >>For additional commands, e-mail: sandesha-dev-help@ws.apache.org
>     <mailto:sandesha-dev-help@ws.apache.org>
>     >>
>     >>
>     >>
>     >>
>     >
>     >---------------------------------------------------------------------
>     >To unsubscribe, e-mail: sandesha-dev-unsubscribe@ws.apache.org
>     <mailto:sandesha-dev-unsubscribe@ws.apache.org>
>     >For additional commands, e-mail: sandesha-dev-help@ws.apache.org
>     <mailto:sandesha-dev-help@ws.apache.org>
>     >
>     >
>     >
>     >
>
>
>     ---------------------------------------------------------------------
>     To unsubscribe, e-mail: sandesha-dev-unsubscribe@ws.apache.org
>     <mailto:sandesha-dev-unsubscribe@ws.apache.org>
>     For additional commands, e-mail: sandesha-dev-help@ws.apache.org
>     <mailto:sandesha-dev-help@ws.apache.org>
>
>


---------------------------------------------------------------------
To unsubscribe, e-mail: sandesha-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: sandesha-dev-help@ws.apache.org


Mime
View raw message