Please find my in-line answers. On Fri, May 18, 2012 at 12:46 PM, Dulini Atapattu <dulin...@gmail.com>wrote:
> Hi Jean and all, > > With related to the project: Message Queue component for Nuvem, so far I > read about AmasonSQS, Azure Queue Service Rest API, MemcacheQ, Sparrow and > Depcached. According to details and APIs related to these queue services/ > frameworks, all the queue services provide send message and receive message > functionality with related to a specified queue, and only some queue > services/ frameworks provide other related services such as creating > queues, deleting messages etc. > Sound good but you don't need to support all of above services. You can pick around 4 widely used services here because for all those implementations you have to perform following activities. 1.) Implement X queue service for Nuvem Queue API. 2.) Provide full set of unit tests for X implantation. 3.) Provide documentation how to configure X queue service with Nuvem API and may be samples as well. Personally I believe following 3 services need to be included within the scope of your project. 1.) Amazon SQS 2.) GAE (MemcacheQ) 3.) Nuvem specific implementation ( ActiveMQ ?) Before you start you may have to find solutions for following issues * How to test AmasonSQS on Amazon platform. In last year student who did key-value component created a Amazon account for him AFAIK it's free for one year time. You may do the same or can find any alternative ?. * Is that MemcacheQ licence compliant with Apache ? * Still you haven't focus on Nuvem specific implementation , this also a very important component. > > Therefore I came up with the following design/ interface for the message > queue component, which provides the user the basic two functionalities > provided by any queue services, and the implementation of this interface > may call other relevant functionalities relevantly according to the queue > service being used and as required: > > putMessage(queueName, messageBody); > > getMessage(queueName); > This API is not sufficient for enterprise applications. For example it's mandatory to create and delete queues regardless of underline service provider. If the specific service provider does not support for a particular method you need to come up with solution or can throw unsupported exception. Refer the last year key-value project it has lot of tips to overcome such limitations. IMO we need to support following activities. 1.) create queue , delete queue , list all queues, clear queue ( remove all message on queue) 2.) send message , receive message, delete message 3.) what else ..? > > The getMessage should return the message which is consumed by the queue. > Also message deletion tasks etc. should be performed inside the > implementation of getMessage. > > Also I would like to use MemcacheQ as the 3rd party queue framework for > GAE, and I would like to know the feedback of the community regarding this > choice. > > Also I would like to know the feedback about the API I have come up with. > It seems my comments on Google Melange have been ignored, in there I asked realistic breakdown of project according to allocated time with task. You have to provide schedule for this project. what I mean here is something similar to below. Define API - estimated complete date Amazon SQS - estimated complete date GAE (MemcacheQ) - estimated complete date Nuvem specific implementation without any of above ( ActiveMQ ?) - estimated complete date These dates are flexible and not like deadlines but we need some kind of a schedule to monitor your progress. It would be an advantage to you to complete at least 1 or 2 services before the mid-term evaluation. Thanks ! > > Thank you, > Best regards > > On Thu, Apr 26, 2012 at 3:46 AM, Dulini Atapattu <dulin...@gmail.com> > wrote: > > > Hi all, > > > > As my proposal for Message Queue component for Nuvem is being accepted > for > > GSOC 2012 > > i would like to continue my work with the project and to achieve the > goals > > stated. > > I will be starting work with reading about the Apache Qpid, Amazon SQS, > Azure > > Message Queue REST API and 3rd party queue frameworks that are based on > > App Engine menarche API and defining the Nuvem message queue API. > > > > Thank you > > -- > > Dulini I Atapattu > > Look around... <http://www.flickr.com/photos/dia1988> > > > > > > > -- > Dulini I Atapattu > Look around... <http://www.flickr.com/photos/dia1988> > -- Sagara Gunathunga Blog - http://ssagara.blogspot.com Web - http://people.apache.org/~sagara/ LinkedIn - http://www.linkedin.com/in/ssagara