Khanderao on Emerging And Integration Technologies

Thursday, July 02, 2009

Quick Summary of Business Events Support in SOA As11

Oracle's SOA Suite AS11 is a rendezvous of SOA and EDA models. The EDA functionality is served by Business Events Framework (called Event Delivery Network EDN) and Complex Event Process (CEP) are two main components.

EDN: EDN supports a loosely coupled event pub-sub model. From another J2EE server, a publisher can publish the events either programmatically using Java API from a J2EE container or declaratively via ADFbc Entity Objects. These events can be subscribed by zero or more mediator(s) or bpel(s). Both Mediator and BPEL can publish events too. EDN's event pub-sub model supports m:n relations. EDN has been implemented on top of JMS. It supports delivery policies like AtLeastOnce, OneAndOnlyOne, and ExactlyOnce.

EDL: Events are described using EDL (Event Description Language). Each event has a event name as QName and event payload as a xml element. Events carry properties, headers and a payload in runtime.

SCA: We have also made events as a first-class-citizen of SCA. In SCA composite, event publishing and subscribing can be specified.

Subscription: Event subscriptions are defined with event name and (optionally) Xpath based condition filter. While multiple components from one or more composites can subscribe an event, there can be only one subscription per subscribing component.

Testing: You can fire a test event using SOA console in Enterprise Manager (EM)

Monitoring: Events can be monitored by SOA console in EM or http://soaserver:port/soa-infra/events/edn-db-log.html

Labels: , , , ,

Add to Technorati Favorites

Save This Page on del.icio.us

Monday, May 14, 2007

CEP and ECA / ESB routing services

Event Driven Architecture can be broadly classified into two distinct architectures: CEPs and ECA. Here are some basic distinctions. (some people classify into three: ECA/Simple events, Stream based and CEP thus separating streambased and CEP).

Streambased Complex Event Processing (CEP) systems process high volume of stream-based events received in a defined time window. On contrary, rule based or condition based systems respond to external situation/triggers, called as events, and typically ECAs deal with each event individually. ESBs routing service is an example of ECA.

Streams based systems typically process/joins a series of events to match a pattern or deduce an inference or predict a trend. In contrast, rule based ECAs typically follow a decision tree/table/if-then-else rules to forward the event some destinations or to trigger some actions. ECAs often deal with transformation of data and fan-outs.

Stream based system need to be optimized to give high performing required for a high volume of incoming stream of events.

In summary, stream based event processors try to detect a pattern from incoming data in a given TIME frame. Such processors most commonly do not "act" on "AN" event. They "process" a series of incoming data received in a given time frame. In other words, the stream based event processors "identifies situations" or generates events. (however, Some stream based systems work on "individual" event by setting the time window very small or via an attribute dictating the system to act on individual events as against a series of events.)

In contrast, rule based or ECAs “act” on individual events.




Labels: , ,

Add to Technorati Favorites

Save This Page on del.icio.us