Hi Prabath, On Wed, Jul 8, 2015 at 8:49 AM, Prabath Ariyarathna <prabat...@wso2.com> wrote:
> > > On Wed, Jul 8, 2015 at 11:15 AM, Malaka Silva <mal...@wso2.com> wrote: > >> IMO this should be in memory by default and should provide some other >> ways like JDBC if they require. WDYT? >> > > +1 We can start with the in-memory and later we can go for the other > permenent persistent options. > IMO, doing it in-memory will not be useful in production environments. The reason is when we store the message in-memory you have to store the whole message context. This will lead to a memory growth. IMO, Storing has to be done in some external entity. > >> On Wed, Jul 8, 2015 at 11:04 AM, Shafreen Anfar <shafr...@wso2.com> >> wrote: >> >>> Hi Prabath, >>> >>> On Wed, Jul 8, 2015 at 8:24 AM, Prabath Ariyarathna <prabat...@wso2.com> >>> 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 <mal...@wso2.com> 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 < >>>>> prabat...@wso2.com> 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 <shafr...@wso2.com> >>>>>> wrote: >>>>>> >>>>>>> Hi Prabath, >>>>>>> >>>>>>> >>>>>>> On Tue, Jul 7, 2015 at 6:21 PM, Prabath Ariyarathna < >>>>>>> prabat...@wso2.com> 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: prabat...@wso2.com <prabat...@wso2.com>* >>>>>>>> >>>>>>>> *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: prabat...@wso2.com <prabat...@wso2.com>* >>>>>> >>>>>> *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 >>>>>> Architecture@wso2.org >>>>>> 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 >>>>> Architecture@wso2.org >>>>> https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture >>>>> >>>>> >>>> >>>> >>>> -- >>>> >>>> *Prabath Ariyarathna* >>>> >>>> *Associate Technical Lead* >>>> >>>> *WSO2, Inc. * >>>> >>>> *lean . enterprise . middleware * >>>> >>>> >>>> *Email: prabat...@wso2.com <prabat...@wso2.com>* >>>> >>>> *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 >>>> Architecture@wso2.org >>>> 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. >> > > > > -- > > *Prabath Ariyarathna* > > *Associate Technical Lead* > > *WSO2, Inc. * > > *lean . enterprise . middleware * > > > *Email: prabat...@wso2.com <prabat...@wso2.com>* > > *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
_______________________________________________ Architecture mailing list Architecture@wso2.org https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture