apama笔记

记录apama学习笔记,apama中任何对象都可以理解未一个事件,只要注册了每个对象事件监听,在apama进程接收消息队列中有该对象时,就会进行对象匹配,如果满足条件就会触发一个事件监听。

RPC序列化

apma的rpc通信过程中数据序列化是文本字符串序列化,不是二进制序列化。序列化格式为:packageName + eventName + properties属性。 例如:”QRY_apamax.atmfraud.DetectRepeatedMaxWithdrawals”, 1, “*”, [“600”]。

序列化顺序严格按照事件定义时候的顺序来组织,数据格式也要对应,否则会出现rpc通信过程中事件丢失问题。

工程目录约定

event目录

该目录主要包含apama进程启动的时候预定义的一些事件,实现系统测试、初始化一些系统事件使用。
文件名:后缀名为evt
格式:事件定义全路径(属性定义)
例如:
//预生产的事件列表,按照顺序生产后放入当前correlator的消息队列
com.lehoon.apama.EventC(“C1”)
com.lehoon.apama.EventA(“A1”)
com.lehoon.apama.EventF(“F1”)

dashboards目录

apama本身支持cs应用,apama的client端就是dashboards面板,支持控件拖拽式开发,动态绑定运行时的dataview实例。 缺点就是不支持高分屏、用户体验度不好。

monitor目录

apama的主要逻辑代码存放目录,文件后缀名为mon,类似与java的controller+service,在monitor中可以注册关心的事件处理逻辑代码。

queries目录

该目录存放自定义的queries文件,后缀名为qry。Query是epl程序执行的一个基本单元。 epl另外的执行单元是monitor,一个monitor不能能包括一个query。一个query不能包括一个monitor。
query适用于通过事件来提供大量真实世界信息的应用程序。

文章目录
  1. 1. RPC序列化
  2. 2. 工程目录约定
    1. 2.1. event目录
    2. 2.2. dashboards目录
    3. 2.3. monitor目录
    4. 2.4. queries目录