[Wsf-general] Messaging project concept

Chamikara Jayalath chamikara at wso2.com
Tue Mar 27 19:33:00 PDT 2007


Hi All,

(For a possible Telegon/Java implementation :-) )
Yes, there features are trivial to implement. If needed I'll start 
working on them right after the 1.2 release.

Chamikara



Paul Fremantle wrote:
> My responses inline
>
> Sanjiva Weerawarana wrote:
>> Paul Fremantle wrote:
>>> Our current Sandesha implementation doesn't support this kind of 
>>> solution - yet.
>>
>> Have you made these suggestions on sandesha-dev? If not why not??
>
> Because this hasn't been the target for Sandesha. I'm not saying that 
> this approach shouldn't be a target for Sandesha. On the other hand 
> you could see this as an extension that goes beyond the aims of Sandesha.
>
>>> Firstly, we don't have a separate process that can be run simply to 
>>> deliver and manage the messaging interaction. So - for example - you 
>>> run wsclient to deliver a message. Suppose the endpoint isn't up. 
>>> wsclient doesn't run as a daemon. And if wsclient kept running, I 
>>> don't think you could start a new wsclient and expect everything to 
>>> run sweetly.
>>
>> Of course not Paul. But that's a *trivial* thing to do if that's what 
>> we want to do .. we can run Sandesha as an endpoint manager by having 
>> a transport that drops messages to a queue (database, filesystem, 
>> whatever) and have another process pick it up and delivers them 
>> reliably.
>
> I never said it wasn't trivial.
>
>> Why have we not done it? No one asked for it yet.
>
> Er. Yes. That was the whole point of my note. I'm not clear why you 
> are arguing with me.
>
>>> However, I think if you had a local engine running as an 
>>> intermediary, the wsclient could deliver to that - get the acks, and 
>>> then the engine could keep running to deliver the messages.
>>
>> Piece of cake.
>
> +1. I agree with you we can do this simply and we should.
>
>>> Secondly, I don't think we've really thought about the long-running 
>>> case properly with Sandesha. For example, we don't have a mode where 
>>> we will back off to a once a day attempt if the server is down for 
>>> more than 12 
>>
>> Come on; is that a serious problem for us to implement an exponential 
>> backoff on the sending logic?? Its trivial.
>
> We have exponential backoff. I think we need something a little more 
> configurable to support real-life scenarios. Again I didn't say it 
> wasn't trivial to implement.
>
>> Just because we haven't done a specific thing is not a reason to 
>> dismiss the whole thing. Let's not throw the baby out with the 
>> bathwater.
>
> You are reading something into my note that I didn't write. I never 
> suggested dismissing Sandesha or our code.
>
> Where on earth did you get the idea that I'm suggesting throwing out 
> *any code* at all. My note was simply highlighting areas we need to 
> develop from our current codebase to meet the proposed use-case.
>
> In common English usage if you write:
>
> >> Our current Sandesha implementation doesn't support this kind of
> >> solution - yet.
>
> then the word "yet" that implies that it can be made to do that.
>
> Similarly see this comment I made later in the note:
>
> >> However, that isn't to say that we can't morph it to be that.
>
>>> hours. Similarly we don't have any console or way of seeing what the 
>>> status of messages is. We don't have a simple logger that only logs 
>>> the delivery status of each message.
>>
>> Again, piece of cake. We have an API for checking status of Sandesha- 
>> all we'd need is a command line tool to drive that API. What's hard 
>> about it??
>
> Again I didn't say it was hard, I merely said we hadn't done this so far.
>
>>> Basically, our messaging agent is designed to be run as a handler 
>>> inside a SOAP engine and not as a standalone messaging engine. 
>>> However, that isn't to say that we can't morph it to be that. I 
>>> actually think there is a lot of mileage in the multi-process design 
>>> that James has proposed. I think however, that we could still 
>>> implement the multi-process design while re-using much of the web 
>>> services code we already have.
>>
>> +1. All it takes is a few custom transports to decouple the pieces 
>> into multiple processes.
>>
>>> However, I think that the concept - of selling a lightweight, Unix 
>>> friendly, messaging engine has a lot of potential. 
>>
>> +1.
>>
>>  > In fact, it could fit
>>> the Presto case much better than what we are selling today.
>>
>> How does that reconcile with doing that work with our current partner? 
>
> I think we should implement the first prototype of this in PHP thereby 
> making it available with a web UI to them.
>
> Paul
>





More information about the Wsf-general mailing list