Tuesday, August 14, 2007

Esper performance: more than 500 000 event/second

The Esper team has published performance results for its Esper event processing engine.

"Esper exceeds over 500 000 event/s on a dual CPU 2GHz Intel based hardware, with engine latency below 3 microseconds average (below 10us with more than 99% predictability) on a VWAP benchmark with 1000 statements registered in the system - this tops at 70 Mbit/s at 85% CPU usage."
Read more starting from the doc and the Esper wiki.

I have been working on this as I basically wrote the performance kit that is available to anyone under a GPL license, and whose client side (which is not Esper specific) can also be used to test other solutions - and I am glad to see those results.

ESP/CEP has been a common place for vague information around performance in a mine is bigger than yours attitude from all vendors to date (no one ever published publicly a detailled benchmark). As almost everyone claims hundreds of thousands of event per second, this just shows Esper is enterprise grade ready and capable of the same kind of performance results.

In the meantime there are a few extra comments to draw from this
- the benchmark app includes a NIO/TCP based Esper event server that can also make use of a staged (read highly concurrent and multithreaded) architecture. This shows how easy it is to set up something like that with Esper. The code is about 5 classes.
- for some really odd reasons, BEA WebLogic Event Server, that does make use of Esper as announced here, was said to top at only 50 000 event/second ie 10x slower (read here). I wish someone from BEA would shed some more light on this.

No comments: