添加http adapter相關(guān)的jar包依賴
mkdir lib-io
cp httpcore-4.0.1.jar lib-io/
cp httpcore-nio-4.0.1.jar lib-io/
cp httpclient-4.0.1.jar lib-io/
## 添加如下依賴
LIB_IO=$BASEDIR/lib-io
# Esper io
#
CLASSPATH=$CLASSPATH:$LIB/esperio-http-6.0.1.jar
CLASSPATH=$CLASSPATH:$LIB_IO/httpcore-4.0.1.jar
CLASSPATH=$CLASSPATH:$LIB_IO/httpclient-4.0.1.jar
CLASSPATH=$CLASSPATH:$LIB_IO/httpcore-nio-4.0.1.jar
##可以試下
##CLASSPATH=$CLASSPATH:$LIB_IO/*
部署epl(2選1)
直接部署epl
module cn.wanda.tech.esper.quickstart;
@Name('Request')
create schema Request(uuid string,msg string);
@Name('Response')
create schema Response(uuid string,msg string);
@Name('Process')
On Request insert into Response select *;
@Name('Display')
select * from Response
cp echo.epl hotdeploy/
通過war包部署(方便統(tǒng)一管理依賴的各種udf等)
git clone https://git.oschina.net/wangpeibin/esper-job.git
- 導(dǎo)入esper-job-quickstart
- 添加需要使用的java class和方法
- 生成war包
mvn package
cp target/xxxxx.war hotdeploy/
配置輸出
<plugin-loader name="EsperIOHTTPAdapter" class-name="com.espertech.esperio.http.EsperIOHTTPAdapterPlugin">
<config-xml>
<esperio-http-configuration>
<!-- 輸入 -->
<service name="myservice" port="8079" nio="true"/>
<get service="myservice" pattern="*"/>
<!-- 輸出 -->
<request stream="Response" uri="http://127.0.0.1:8080/callback"/>
</esperio-http-configuration>
</config-xml>
</plugin-loader>
sh bin/esperee.sh stop
# 可能需要等一陣 等待完全退出
sh bin/esperee.sh start
接受http adapter的輸出
- 使用spring boot 快速搭建服務(wù)
- 添加 controller
@Controller
public class EventController {
private static Logger log = LoggerFactory.getLogger(EventController.class);
@ResponseBody
@RequestMapping(value = "/callback", method = RequestMethod.GET)
public void callback(HttpServletRequest request) {
log.info("callback {} {}", request.getRequestURI(), request.getQueryString());
}
}
mvn spring-boot:run
往http adapter 發(fā)送請求
wget http://127.0.0.1:8079/sendevent?stream=Request&msg=Joe
驗(yàn)證結(jié)果
- spring boot服務(wù)有相應(yīng)的log輸出
最后編輯于 :
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者