Wednesday, October 15, 2008

Why we chose Esper

Esper, is an open source CEP implementation, developed by EsperTech. Prior to building an SOA infrastructure that would utilize the true power of CEP systems in an SOA environment, we did a great deal of research into existing products. We identified two streams of possible candidates,

1. Commercial
2. Open Source

When talking about Open Source CEP systems, Esper and Nesper are two popular projects that outrun many others by both capability and portability. The portability of Esper was a major concern since the CEP system itself will be worthless if it can't easily be ported into an SOA environment. Our decision to use the Apache Synapse ESB was another reason to what made us consider Esper the most likely candidate for the CEP system that we are going to use in our project.

Paul Fremantle, who's one of the mentors of this project has done some initial research on connecting Synapse and Esper which was perhaps one of the major reasons behind our choice.

AXIOM support
AXIOM or Axis Object Model is an object oriented mechanism of handling XML which is proven to be much faster than the traditional marshelling of textual data. Esper's support for AXIOM and especially capabilities in processing AXIOM based events is another fact that makes Esper one of the very likely candidates to work in an environment driven by the Apache Axis2 architecture.

Java APIs
Esper's Java APIs have been well tailored making portability very easy and least complicated. This makes it easier for us to use it in our venture of creating an SOA infrastructure which exposes a CEP system.

Popularity
Our decison to go ahead with an Open Source project was another reason to why we chose Esper, since it is perhaps the most popular Open Source CEP system which is available as of today. Popularity introduces many plus points as our target audience will be more familiar with Esper and it's API compared to another Open Source CEP implementation.

1 comment:

SacrosanctBlood said...

Please compare it with streambase and coral8. You talk about the 'goodness' in Esper, but what i am really interested in is a comparison of Esper with the other two commercial products in terms of performance, ease of use, scalability.