airavata-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Amila Jayasekara <thejaka.am...@gmail.com>
Subject Re: AMQP Support for WS-Messenger
Date Thu, 28 Mar 2013 23:46:20 GMT
On Thu, Mar 28, 2013 at 7:22 PM, Lahiru Gunathilake <glahiru@gmail.com> wrote:
> Hi Danushka,
>
> Yes this seems very useful.More importantly, when someone develop a science
> gateway they would really like to subscribe to different types of messages
> and show the users differnt information (Ex: workflow stuck, workflow node
> failed, workflow node in progress etc). So we have to come up with very
> easy and less complex API for users to deal with this, and I would say we
> can hide AMQP level information when we design the API (like we handle AMQP
> complexity underneath).

Just wondering, can we use JMS to provide API support ?

Because actual scenario is, grid system has AMQP
> messaging system, and we just want to extract out those data, so
> realistically gateway developers might not very interested in AMQP
> complexities, but still interested in data receiving in those messages.
>
> Amila, I think we can test with RabbitMQ because its the most widely used
> implementation, but It really does'nt matter,

IMO, it does matter. I have seen people getting into trouble when they
using wrong AMQP implementations in their applications. If you
carefully google it, you will see many articles. There are certain
parameters which we need to be concern about when selecting a proper
AMQP implementation. I would also like to know what those parameters
are.

Thanks
Amila

anything should work out of
> the box.
>
> Regards
> Lahiru
>
> On Thu, Mar 28, 2013 at 5:31 PM, Danushka Menikkumbura <
> danushka.menikkumbura@gmail.com> wrote:
>
>> Hi Suresh,
>>
>> The AMQP exchanges fit the Airavata notification model quite nicely.
>> Basically we can map elements in the workflow tracking schema to the
>> Header/Topic exchanges (or even to Direct/Fanout exchanges). For an
>> example, we can define a topic (MyTopic) and associate few message types in
>> the schema with it so that whoever subscribes to MyTopic would receive
>> those messages. Furthermore we can let subscribers have durable
>> subscriptions so that the messages will get stored and forwarded in case
>> the subscriber in on an unreliable network. Likewise we can make use of the
>> rich set of building blocks available in AMQP model to have a very robust
>> notification framework.
>>
>> RabbitMQ has a nice article [1] about the AMQP model that explains
>> different types of exchanges, etc nicely. I suggest you read the "Exchanges
>> and Exchange Types" section.
>>
>> [1] - http://www.rabbitmq.com/tutorials/amqp-concepts.html
>>
>> Thanks,
>> Danushka
>>
>>
>> On Thu, Mar 28, 2013 at 1:48 AM, Suresh Marru <smarru@apache.org> wrote:
>>
>> > Hi Danushka,
>> >
>> > Good thinking, I agree with you for the most part. There are few other
>> > concrete use cases I can suggest, but let me get your thoughts on a
>> > particular example:
>> >
>> > Currently WS-Eventing is used to track workflow progress. In reality its
>> > not so much of the eventing spec, but the Airavata Information Model
>> which
>> > is currently based on Workflow Tracking schema [1]. As you can see form
>> the
>> > Web Based XBaya discussion, if a light weight java script based workflow
>> > GUI has to monitor progress and show real-time status (like the current
>> > color coded), would you say AMQP has any additional advantages? Or if you
>> > were to design from scratch, what would you pick which can build upon a
>> > pre-defined information model.
>> >
>> > Suresh
>> > [1] -
>> >
>> https://svn.apache.org/repos/asf/airavata/trunk/modules/commons/workflow-tracking/src/main/resources/schemas/workflow_tracking_types.xsd
>> >
>> > On Mar 27, 2013, at 4:07 PM, Danushka Menikkumbura <
>> > danushka.menikkumbura@gmail.com> wrote:
>> >
>> > > Hi,
>> > >
>> > > When I go through [1], I get the impression that what we really need is
>> > an
>> > > extensible event bus that can provide notification push/pull
>> > functionality
>> > > so that a gateway developer has the flexibility to come up with his own
>> > > protocol for receiving notifications. At a very higher level the
>> > messenger
>> > > would have two main layers, the routing layer and the transport layer.
>> We
>> > > would have the routing rules defined in the routing layer that makes
>> > > notifications available to different transports, such as
>> WS-Notification,
>> > > WS-Eventing, file, mail, AMQP, JMS, etc or any other custom type
>> > developed
>> > > as you wish.
>> > >
>> > > Along the line of AMQP, basically the requirements could be twofold.
>> > >
>> > > 1. AMQP broker semantics to support pub/sub behavior
>> > > 2. AMPQ wire-level format
>> > >
>> > > I am not quite sure which makes AMQP more appealing to the scientific
>> > > community, specially in environments like XSEDE. Furthermore, I would
>> > like
>> > > to know a typical scenario, either real or hypothetical that could
>> > exploit
>> > > the capabilities of AMQP.
>> > >
>> > > [1] - https://issues.apache.org/jira/browse/AIRAVATA-339
>> > >
>> > > Thanks,
>> > > Danushka
>> >
>> >
>>
>
>
>
> --
> System Analyst Programmer
> PTI Lab
> Indiana University

Mime
View raw message