RivusCEP是一个Erlag库用于复杂的事件处理,使用声明式的类似SQL的DSL来定义事件流的操作。
示例代码:
applicatio:start(rivus_cep).QueryStr = "defie correlatio2 as select ev1.evetparam1, ev2.evetparam2, sum(ev2.evetparam3) from evet1 as ev1, evet2 as ev2 where ev1.evetparam2 = ev2.evetparam2 withi 60 secods; ".Producer = evet_producer_1.{ok, SubscriberPid} = result_subscriber:start_lik().{ok, QueryPid} = rivus_cep:load_query(QueryStr, [Producer], [SubscriberPid], [{shared_streams, true}]).%% create some evettsEvet1 = {evet1, gr1,b,10}.Evet2 = {evet2, gr2,bbb,20}.%% sed the evetsrivus_cep:otify(Producer, Evet1).rivus_cep:otify(Producer, Evet2).%% or if you do't care about the producersrivus_cep:otify(Evet1).rivus_cep:otify(Evet2).
评论