- An event processing functionality that runs Event Processing Agents in various sources, requires a that will take care of the routing and execution in a distributed environment. There are three alternatives here:
- No native platform -- an engine that can run in multiple platforms (thus need to be integrated to each platform that it runs in by adapters etc...).
- Dedicated event processing platform -- the event processing part has a dedicated platform that provides the infrastructure for the event processing functions.
- Event Processing is built as part of an already existing platform.
All of these variations exist in the market today, and there are pros and cons for each of them, smaller vendors may prefer the first alternative as my friend Marco noted in his Blog.
When getting to the third alternative, if the environment is a SOA environment, then the ESB is a natural place in the SOA middleware to be the principle carrier of event processing functionality:
- It provides messaging infrastructure and routing capabilities
- It provides mediations like - validation, transformation and enrichment that can be reused for event processing (have a large intersection with the "mediated event processing" functions)
- It supports distributed environment.
While the principle usage of ESB in SOA has been to mediate between consumer and producer of services, being a carrier for event processing is now considered as a step in the evolution of ESBs.
This does not say that ESB is the ONLY place in which event processing functionality can run, which brings to a discussion about the Event Processing Conceptual Model- which I'll deal in a subsequent posting.
The ESB gets into the picture in alternative
1 comment:
Enterprise Service Bus (ESB) is a software architecture for middle ware which provides fundamental services for more complex architectures. It is a software architecture model used for designing and implementing the interaction and communication between mutually interacting software applications in service
oriented architecture (SOA). In a general sense, an ESB can be thought of as a mechanism that manages access to applications and services (especially legacy versions) to present a single, simple, and consistent interface to endusers via Web or formsbased clientside front ends. eBay uses the 100% Open Source WSO2 Enterprise Service Bus to process over 1 billion transactions per day (http://wso2.com/casestudies/ebay-uses-100-open-source-wso2-esb-to-process-more-than-1-billion-transactions-per-day/). Interesting presentation which is based on complex event processing with esper and WSO2 ESB could be found in http://blog.facilelogin.com/2008/07/complex-event-processing-with-esper-and.html.
Post a Comment