IMO this should be in memory by default and should provide some other ways
like JDBC if they require. WDYT?

On Wed, Jul 8, 2015 at 11:04 AM, Shafreen Anfar <[email protected]> wrote:

> Hi Prabath,
>
> On Wed, Jul 8, 2015 at 8:24 AM, Prabath Ariyarathna <[email protected]>
> wrote:
>
>> Hi Malaka.
>>
>> Agreed on your thought. Then we need to store all the rollback messages
>> and process separately by different thread same as message processor doing.
>> It will change the behavior of store mediator if rollback has happened.
>>
>
> Where are we going to store it ? Is it in an in-memory queue ?
>
>
>>
>>
>> Thanks.
>>
>> On Wed, Jul 8, 2015 at 10:31 AM, Malaka Silva <[email protected]> wrote:
>>
>>> Hi Prabath,
>>>
>>> I don't think it's a good idea since it can cause threads to be blocked
>>> when the broker is down?
>>>
>>> On Wed, Jul 8, 2015 at 10:25 AM, Prabath Ariyarathna <[email protected]
>>> > wrote:
>>>
>>>> Hi Shafreen.
>>>>
>>>> We planned to use same thread for the retry since store mediator
>>>> working in synchronous mode.
>>>>
>>>>
>>>> Thanks.
>>>>
>>>> On Wed, Jul 8, 2015 at 9:19 AM, Shafreen Anfar <[email protected]>
>>>> wrote:
>>>>
>>>>> Hi Prabath,
>>>>>
>>>>>
>>>>> On Tue, Jul 7, 2015 at 6:21 PM, Prabath Ariyarathna <
>>>>> [email protected]> wrote:
>>>>>
>>>>>> Hi All,
>>>>>>
>>>>>> We are planning to implement guaranteed message delivery capability
>>>>>> to the MSMP.  We can divided current implementation into two basic 
>>>>>> sections
>>>>>> based on process.
>>>>>>
>>>>>>    1. *Message Store:* Message store mainly responsible for
>>>>>>    producing messages to the message broker using message store mediator.
>>>>>>    2. *Message process*: Message processor picks the messages from
>>>>>>    the message store and send to the specified endpoint.
>>>>>>
>>>>>> When we implement a guaranteed message delivery mechanism to the
>>>>>> MSMP, we need to think about both of above scenarios. JMS specification
>>>>>> provided us to two mechanisms(Acknowledgement, Transaction), which
>>>>>> can be used to achieve guaranteed delivery.
>>>>>> In our case message processor(consumer) side guaranteed delivery was
>>>>>> already implemented using acknowledgements. Message processor ACK to the
>>>>>> message store only if message was successfully processed. Message
>>>>>> store  removes the message once ACK received by the processor else
>>>>>> redeliver the message, but for the message storing(producer) part, we 
>>>>>> don’t
>>>>>> have any mechanism implemented to achieve this feature. Main
>>>>>> intention of this implementation is to provide a way to handle guaranteed
>>>>>> delivery for the message storing(producer) part.
>>>>>>
>>>>>> *Problem.*
>>>>>> We don’t have mechanism to handle guaranteed delivery in message
>>>>>> storing(producer) section. This issue can be occurred for following use
>>>>>> cases.
>>>>>>
>>>>>>    1. Message was sent to the MB, but didn’t received to the MB side
>>>>>>    due to communication failure.
>>>>>>    2. Message broker not available when try to store the message.
>>>>>>
>>>>>>
>>>>>> *Solution.*
>>>>>> We can choose either acknowledgement or transaction as a solution of
>>>>>> guaranteed delivery implementation but since JMS 1.1 doesn't support for
>>>>>> the producer acknowledgement, we decided to enable transaction support 
>>>>>> for
>>>>>> the message storing section to provide guaranteed delivery. Other than 
>>>>>> the
>>>>>> transactions enable in the message storing process, we planned to add 
>>>>>> retry
>>>>>> mechanism to avoid scenario like message store is not available when we 
>>>>>> try
>>>>>> to produce messages. User can define retry count and retry delay  in the
>>>>>> configuration of the store mediator. Message retry process is executing 
>>>>>> If
>>>>>> message broker connection not available or transaction has already
>>>>>> rollbacked. In addition to that features we are planning to add batch
>>>>>> process facility to store mediator to improve performance, while enabling
>>>>>> transactions as the future improvement.
>>>>>>
>>>>>
>>>>> How do you really going to implement the retry feature ? Will the
>>>>> retry happen using the same thread or will you be creating a separate
>>>>> thread for it ?
>>>>>
>>>>>
>>>>>>
>>>>>>
>>>>>> Thanks
>>>>>> --
>>>>>>
>>>>>> *Prabath Ariyarathna*
>>>>>>
>>>>>> *Associate Technical Lead*
>>>>>>
>>>>>> *WSO2, Inc. *
>>>>>>
>>>>>> *lean . enterprise . middleware *
>>>>>>
>>>>>>
>>>>>> *Email: [email protected] <[email protected]>*
>>>>>>
>>>>>> *Blog: http://prabu-lk.blogspot.com <http://prabu-lk.blogspot.com>*
>>>>>>
>>>>>> *Flicker : https://www.flickr.com/photos/47759189@N08
>>>>>> <https://www.flickr.com/photos/47759189@N08>*
>>>>>>
>>>>>> *Mobile: +94 77 699 4730 *
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>
>>>>>
>>>>> --
>>>>> Regards,
>>>>> *Shafreen*
>>>>> Software Engineer
>>>>> WSO2 Inc
>>>>> Mobile : 077-556-395-1
>>>>>
>>>>
>>>>
>>>>
>>>> --
>>>>
>>>> *Prabath Ariyarathna*
>>>>
>>>> *Associate Technical Lead*
>>>>
>>>> *WSO2, Inc. *
>>>>
>>>> *lean . enterprise . middleware *
>>>>
>>>>
>>>> *Email: [email protected] <[email protected]>*
>>>>
>>>> *Blog: http://prabu-lk.blogspot.com <http://prabu-lk.blogspot.com>*
>>>>
>>>> *Flicker : https://www.flickr.com/photos/47759189@N08
>>>> <https://www.flickr.com/photos/47759189@N08>*
>>>>
>>>> *Mobile: +94 77 699 4730 *
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>> _______________________________________________
>>>> Architecture mailing list
>>>> [email protected]
>>>> https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture
>>>>
>>>>
>>>
>>>
>>> --
>>>
>>> Best Regards,
>>>
>>> Malaka Silva
>>> Senior Tech Lead
>>> M: +94 777 219 791
>>> Tel : 94 11 214 5345
>>> Fax :94 11 2145300
>>> Skype : malaka.sampath.silva
>>> LinkedIn : http://www.linkedin.com/pub/malaka-silva/6/33/77
>>> Blog : http://mrmalakasilva.blogspot.com/
>>>
>>> WSO2, Inc.
>>> lean . enterprise . middleware
>>> http://www.wso2.com/
>>> http://www.wso2.com/about/team/malaka-silva/
>>> <http://wso2.com/about/team/malaka-silva/>
>>>
>>> Save a tree -Conserve nature & Save the world for your future. Print
>>> this email only if it is absolutely necessary.
>>>
>>> _______________________________________________
>>> Architecture mailing list
>>> [email protected]
>>> https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture
>>>
>>>
>>
>>
>> --
>>
>> *Prabath Ariyarathna*
>>
>> *Associate Technical Lead*
>>
>> *WSO2, Inc. *
>>
>> *lean . enterprise . middleware *
>>
>>
>> *Email: [email protected] <[email protected]>*
>>
>> *Blog: http://prabu-lk.blogspot.com <http://prabu-lk.blogspot.com>*
>>
>> *Flicker : https://www.flickr.com/photos/47759189@N08
>> <https://www.flickr.com/photos/47759189@N08>*
>>
>> *Mobile: +94 77 699 4730 *
>>
>>
>>
>>
>>
>>
>> _______________________________________________
>> Architecture mailing list
>> [email protected]
>> https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture
>>
>>
>
>
> --
> Regards,
> *Shafreen*
> Software Engineer
> WSO2 Inc
> Mobile : 077-556-395-1
>



-- 

Best Regards,

Malaka Silva
Senior Tech Lead
M: +94 777 219 791
Tel : 94 11 214 5345
Fax :94 11 2145300
Skype : malaka.sampath.silva
LinkedIn : http://www.linkedin.com/pub/malaka-silva/6/33/77
Blog : http://mrmalakasilva.blogspot.com/

WSO2, Inc.
lean . enterprise . middleware
http://www.wso2.com/
http://www.wso2.com/about/team/malaka-silva/
<http://wso2.com/about/team/malaka-silva/>

Save a tree -Conserve nature & Save the world for your future. Print this
email only if it is absolutely necessary.
_______________________________________________
Architecture mailing list
[email protected]
https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture

Reply via email to