Mohan: Thank you very much, it's a very descriptive article, was very useful!
Nirmal: I do not think you are wrong. The only concern here is to have a clear separation between a JMS Output Adapter and a AMQP Output Adapter. Otherwise the existing JMS Output Adapter could be updated without a problem. Kishanthan: Thank you very much! On Sun, Dec 22, 2013 at 11:22 PM, Kishanthan Thangarajah < [email protected]> wrote: > Hi Imesh, > > Just a suggestion. > We recently added the support for AMQP transport for ESB based on RabbitMQ > Java Client [1]. So if it helps, you can take a look at that too as an > option, when you start writing this adaptor. > > Thanks, > Kishanthan. > [1] http://www.rabbitmq.com/api-guide.html > > > > On Sun, Dec 22, 2013 at 5:00 PM, Imesh Gunaratne <[email protected]> wrote: > >> Hi, >> >> Thanks Lasantha for your feedback. >> >> No, there won't be any processing happening in CEP based on the AMQP >> properties. The idea is to support the AMQP protocol when writing from CEP >> to the message consumer. As a result AMQP properties could be included in >> messages using event formatters. >> >> Nirmal, the reason why I proposed to implement a new adapter is that JMS >> and AMQP would mean two different things (as you have mentioned) in the >> context of messaging: >> >> - JMS is a standard* messaging API for Java platform* >> - AMQP is a specification which provides a *standard messaging >> protocol across all platforms*. >> >> Therefore I think an AMQP Output Adapter would provide a much clear view >> and add more value to CEP when communicating with AMQP based, non Java >> message consumers. >> >> Yes as I have pointed out earlier the idea is to implement the AMQP >> Output Adapter by re-using the features in JMS Output Adapter. >> >> Thanks >> >> >> >> On Sun, Dec 22, 2013 at 1:18 PM, Lasantha Fernando <[email protected]>wrote: >> >>> Hi Imesh, >>> >>> +1 for implementing an AMQP output adapter. I think it will be very >>> useful to add it as a supported adapter type for CEP. >>> >>> Will there be any processing happening based on the AMQP properties >>> within the CEP? Or is it simply that an AMQP message needs to be sent with >>> properties to the AMQP based broker? >>> >>> Thanks, >>> Lasantha >>> >>> >>> On 22 December 2013 10:34, Imesh Gunaratne <[email protected]> wrote: >>> >>>> Hi All, >>>> >>>> In Apache Stratos (incubating) 4.0.0 we are using WSO2 CEP for >>>> aggregating statistics events sent by load balancers and cartridge agents >>>> (agents in VM instances). The aggregated values are used by the Autoscaler >>>> for taking autoscaling decisions. >>>> >>>> Here the events are sent to CEP using the default input adapter (via >>>> Thrift) and the aggregated events are sent to an AMQP based message broker >>>> using the JMS Output Adapter. Event formatters have been used for defining >>>> the formats of the output messages. >>>> >>>> *A Sample Event Formatter:* >>>> <?xml version="1.0" encoding="UTF-8"?> >>>> <eventFormatter name="AverageRequestsInflightEventFormatter" >>>> statistics="disable" trace="enable" xmlns=" >>>> http://wso2.org/carbon/eventformatter"> >>>> <from streamName="average_in_flight_requests" version="1.0.0"/> >>>> <mapping customMapping="enable" type="json"> >>>> >>>> <inline>{"average_in_flight_requests":{"cluster_id":"{{cluster_id}}","network_partition_id":"{{network_partition_id}}","value":"{{count}}"}}</inline> >>>> </mapping> >>>> <to eventAdaptorName="JMSOutputAdaptor" eventAdaptorType="jms"> >>>> <property >>>> name="transport.jms.Destination">summarized-health-stats</property> >>>> </to> >>>> </eventFormatter> >>>> >>>> The above is a sample event formatter which defines an aggregated >>>> event. Similarly there is a collection of events sent by CEP to the message >>>> broker. For each event there is an event formatter defined. >>>> >>>> >>>> *The Requirement:* >>>> Here there is a requirement to include a set of AMQP Properties [1] in >>>> the output message. These properties may include name value pairs specific >>>> for each event: >>>> >>>> *A Sample AMQP Message* >>>> Message Properties: >>>> >>>> event_class_name: >>>> org.apache.stratos.messaging.event.health.stat.AverageInFlightRequests >>>> >>>> Message Body: >>>> >>>> {"average_in_flight_requests":{"cluster_id":"{{cluster_id}}","network_partition_id":"{{network_partition_id}}","value":"{{count}}"}} >>>> >>>> >>>> *The Proposal:* >>>> As I understood this functionality is not supported by the JMS Output >>>> Adapter at the moment and I think it's logical since AMQP features should >>>> not be included in JMS Output Adapter. >>>> >>>> As a solution to this requirement I would like to implement an AMQP >>>> Output Adapter on top of the JMS Output Adapter to support this >>>> functionality [2]. I will send more implementation design details in >>>> another mail as I progress. >>>> >>>> Really appreciate your thoughts on this. >>>> >>>> [1] >>>> http://en.wikipedia.org/wiki/Advanced_Message_Queuing_Protocol#Message_format >>>> [2] http://docs.wso2.org/display/CEP300/Output+Event+Adaptors >>>> >>>> >>>> Many Thanks >>>> -- >>>> *Imesh Gunaratne* >>>> Technical Lead >>>> WSO2 Inc: http://wso2.com >>>> T: +94 11 214 5345 M: +94 77 374 2057 >>>> W: http://imesh.gunaratne.org >>>> Lean . Enterprise . Middleware >>>> >>>> >>>> _______________________________________________ >>>> Architecture mailing list >>>> [email protected] >>>> https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture >>>> >>>> >>> >>> >>> -- >>> *Lasantha Fernando* >>> Software Engineer - Data Technologies Team >>> WSO2 Inc. http://wso2.com >>> >>> email: [email protected] >>> mobile: (+94) 71 5247551 >>> >>> _______________________________________________ >>> Architecture mailing list >>> [email protected] >>> https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture >>> >>> >> >> >> -- >> *Imesh Gunaratne* >> Technical Lead >> WSO2 Inc: http://wso2.com >> T: +94 11 214 5345 M: +94 77 374 2057 >> W: http://imesh.gunaratne.org >> Lean . Enterprise . Middleware >> >> >> _______________________________________________ >> Architecture mailing list >> [email protected] >> https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture >> >> > > > -- > *Kishanthan Thangarajah* > Senior Software Engineer, > Platform Technologies Team, > WSO2, Inc. > lean.enterprise.middleware > > Mobile - +94773426635 > Blog - *http://kishanthan.wordpress.com <http://kishanthan.wordpress.com>* > Twitter - *http://twitter.com/kishanthan <http://twitter.com/kishanthan>* > > _______________________________________________ > Architecture mailing list > [email protected] > https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture > > -- *Imesh Gunaratne* Technical Lead WSO2 Inc: http://wso2.com T: +94 11 214 5345 M: +94 77 374 2057 W: http://imesh.gunaratne.org Lean . Enterprise . Middleware
_______________________________________________ Architecture mailing list [email protected] https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture
