Saturday, August 01, 2009

WSO2 ESB 2.1 as an Event-Broker

WSO2 ESB 2.0 brought the eventing capability to the WSO2 ESB, recent improvements done for the initial implementation has made the WSO2 ESB as a fully featured event-broker.
An event-broker capture, process and distribute events using the publish-subscribe pattern. WSO2 ESB capture events using the generic proxy service capability comes with the ESB with the usage of special eventing mediator 'Event-Publish Mediator'. Message capturing is open with any transport that can enable with WSO2 ESB. Transport support covers all leading transports and second layered business level transports.
Events flow through the standard mediation flow in the WSO2 ESB, so any mediator can plug before dispatching. WSO2 ESB ships with a wide range of different mediators in its mediation library and allow users to write their own custom mediators using the simple API. That covers the event processing capability of the event-broker.
WSO2 dispatch the events by identifying the subscribers using the subscription manager. Subscription manager store the subscription in the subscription store that comes through the event-source. Subscription store can be user defined in-memory, registry (e.g. WSO2 Governance Registry) or a DB driven. Event filtering done by using the default topic based event filtering. The topic hierarchy used in the topic filtering is a key for the performance of the event dispatching. Similar to the event capturing any transport that can enable with WSO2 ESB can use as the dispatching transport. Newly added thread model for event filtering and dispatching has done a significant performance improvement. When the dispatching improves due to the fundamental pattern 'pipes-and-filters' entire mediation flow get improves and the resource usage for message processing get utilized as well.
Event-broker can discover easily by using the service URL published by the WSO2 ESB for the broker.
There are three articles written to describe in-detail information of eventing capabilities of WSO2 ESB.
Fusion: Eventing with SOA
Fusion: Eventing with SOA Eventing using Synapse and WSO2 ESB
Fusion: Eventing with SOA Implementation and Development of EDA

0 comments: