Hi,

The software we having been developing is based on Esper, supporting 
hot-deployment of esper engine (including event types and EPL statements), 
and providing esper engine management .
Recently we consider running it in clusters. Since Esper is not horizontally 
scalable, we use Storm as a stream framework and Esper as stream processors. 
We have built some topology based on tomdz's storm-epser API on github and 
things went fine. 
But for other functions of our software, like hot-deployment of esper engine 
and engine management, it seems hard to implement  them in storm. 
Here are the details of our problems:

1. hot-deployment of esper engine. In storm, I think processing tasks of one 
deployed esper engine should be fulfilled by a topology. One way is to build a 
topology for every esper engine deployment. But how can I build topology 
dynamically? Will this be possible in near future? 

2. esper engine management. Getting the states of esper engines in a standalone 
environment is easy by means of calling esper APIs, while in cluster, if I 
create one esper 
engine in every bolt, how am I supposed to get the state of esper engine in the 
bolt? One way is to send some GetStateRequest to spout, spout then forwards the 
request to some bolt (whose id can be specified in the request), and the bolt 
sends the state to, say ZeroQ, which can finally return to the request sender. 
Is this 
a good way?

Any reply would be appreciated! Thank you very much!




Best regards, 

Hao Yu 
Center for High-speed Railway Technology, Tsinghua University (CHRT) 
Addr: 1117 LiuQing Building, Tsinghua University, Beijing, P.R.CHINA, 100084 
Fax: 86-10-62788330 
Email:[email protected]

Reply via email to