Hi Dulini,

I've started to review your patch, which looks good so far but I'll send a
few comments later this evening.

In the meantime it'd be good if you could post an email to describe your
design, and also give us a few pointers on how to test this. I know you
have some test cases but I'm not sure how I could run them. What would I
need to configure on an EC2 instance for example?

Also, do you have another patch for the GAE implementation that we could
review as well?

Thanks!

- Jean-Sebastien

On Wed, Jul 11, 2012 at 8:30 PM, Dulini Atapattu <[email protected]> wrote:

> Hi Jean and all,
>
> I have submitted a patch to JIRA issues for Message Queue Component for
> Nuvem and I would like to receive any comments regarding that. Also I would
> like to know whether it is alright to submit my mid-term evaluation to
> melange now.
>
> Thanks
>
> On Tue, Jul 10, 2012 at 1:24 PM, Dulini Atapattu <[email protected]>
> wrote:
>
> > Hi Jean and all,
> >
> > I have implemented the nuvem-api for message queue component including
> the
> > interface and other related classes. The api interface is as follows:
> >
> > public QueueMessageHandle sendMessage(QueueMessage queueMessage) throws
> > MessageQueueServiceException;
> > (Sends the queueMessage and returns a handle to the sent message)
> >
> > public List<QueueMessage> receiveMessage(int numMessages) throws
> > MessageQueueServiceException;
> > (Receives the number of messages specified by numMessages from the queue
> > service and returns a list of queue messages)
> >
> > public boolean deleteMessage(QueueMessage queueMessage) throws
> > MessageQueueServiceException;
> > (Deletes the message specified by the queueMessage and returns true if
> > deletion is successful)
> >
> > I also have implemented this interface for Amazon platform, tested with
> > test cases using the account I have created in Amazon Free Usage Tier
> [14],
> > and also documented the code. I also have submitted the patch for this
> work
> > at Nuvem JIRA issues [15].
> >
> > I have also implemented the interface for GAE (using Pull Queue) and
> > currently I am performing the tests for the implementation.
> >
> > I would like to receive any comments about the work I have done so far.
> >
> > Thanks
> >
> > [14] - http://aws.amazon.com/free/
> > [15] - https://issues.apache.org/jira/browse/NUVEM-14
> >
> >
> >
> > On Sat, Jul 7, 2012 at 9:41 AM, Sagara Gunathunga <
> > [email protected]> wrote:
> >
> >> On Sat, May 19, 2012 at 12:36 AM, Dulini Atapattu <[email protected]>
> >> wrote:
> >> > Hi Sagara,
> >> >
> >> > Thank you very much for the comments you have mentioned and they are a
> >> lot
> >> > helpful to get done the required tasks appropriately and relevantly.
> >> >
> >> > I will focus on the activities, queue services and solutions to issues
> >> you
> >> > have mentioned and will provide the community the API design according
> >> to
> >> > the requirements you have mentioned.
> >> >
> >> > I added approximate completion dates to my project proposal and they
> >> are as
> >> > follows:
> >> >
> >> >
> >> >    - 24th April - 20th May
> >> >
> >> > Read about the Apache Qpid, Amazon SQS, Azure Message Queue REST API
> >> > and3rd party queue frameworks which based on App Engine menarche API
> >> > (24th
> >> > April - 30th April).
> >> >
> >> > Define the Nuvem message queue API. Discuss with Nuvem community about
> >> the
> >> > design of the API and scope of the project (1st May - 20th May).
> >> >
> >> >    - 21st May - 12th July
> >> >
> >> > Implement above Message Queue API using GAE (21st May to 11th June).
> >> >
> >> > Implement above Message Queue API using Amazon (12th June to 03rd
> July).
> >> >
> >> > Preparing for the mid-term evaluation of the project (4th July to 12th
> >> > July).
> >>
> >> Hi Dulini,
> >>
> >> We are reaching to mid term evaluation very soon. I would like to see
> >> codes related to above tasks either on SVN or JIRA,  those codes are
> >> important to measure project progress for mid term evaluation.
> >>
> >> I believe Jean will help out to bring your codes to SVN.
> >>
> >> Thanks !
> >>
> >>
> >> >
> >> >
> >> >
> >> >    - 13th July - 12th August
> >> >
> >> > Implement Queue API using Apache QPID (13th July - 27th July).
> >> >
> >> > Implement simple application to demonstrate the Nuvem Message Queue
> API
> >> > (28th July - 6th August).
> >> >
> >> >        Completing the documentation and test cases (7th August - 12th
> >> > August).
> >> >
> >> >
> >> >
> >> >    - August 16th - August 23rd
> >> >
> >> >  Prepare the deliverables for final submission.
> >> >
> >> > Thank you,
> >> > Best regards
> >> >
> >> > On Fri, May 18, 2012 at 2:19 PM, Sagara Gunathunga <
> >> > [email protected]> wrote:
> >> >
> >> >> Please find my in-line answers.
> >> >>
> >> >> On Fri, May 18, 2012 at 12:46 PM, Dulini Atapattu <
> [email protected]
> >> >> >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 <
> [email protected]
> >> >
> >> >> > 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
> >> >>
> >> >
> >> >
> >> >
> >> > --
> >> > 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
> >>
> >
> >
> >
> > --
> > Dulini I Atapattu
> > Look around... <http://www.flickr.com/photos/dia1988>
> >
> >
>
>
> --
> Dulini I Atapattu
> Look around... <http://www.flickr.com/photos/dia1988>
>

Reply via email to