美文网首页
Esper异步http adapter集成

Esper异步http adapter集成

作者: wpb | 来源:发表于2017-04-12 18:01 被阅读0次

添加http adapter相关的jar包依赖

  • 上传http adapter 依赖的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/
  • 修改bin/setclasspath.sh
## 添加如下依赖
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

  • vim echo.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包部署(方便统一管理依赖的各种udf等)

  • 构建项目
git clone https://git.oschina.net/wangpeibin/esper-job.git
  • 导入esper-job-quickstart
  • 添加需要使用的java class和方法
  • 生成war包
mvn package
  • 部署
cp target/xxxxx.war hotdeploy/
  • 确认
    • 同上

配置输出

  • 配置conf/esper-default.xml
<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 快速搭建服务
  • 添加 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());
    }
}
  • 启动spring boot 服务
mvn spring-boot:run

往http adapter 发送请求

wget http://127.0.0.1:8079/sendevent?stream=Request&msg=Joe

验证结果

  • spring boot服务有相应的log输出

相关文章

网友评论

      本文标题:Esper异步http adapter集成

      本文链接:https://www.haomeiwen.com/subject/fznmattx.html