当前位置: 首页 > 软件库 > 程序开发 > 常用工具包 >

Rivus CEP

Erlang 事件处理库
授权协议 Apache
开发语言 ErLang
所属分类 程序开发、 常用工具包
软件类型 开源软件
地区 不详
投 递 者 宓和同
操作系统 Linux
开源组织
适用人群 未知
 软件概览

Rivus CEP 是一个 Erlang 库用于复杂的事件处理,使用声明式的类似 SQL 的 DSL 来定义事件流的操作。

示例代码:

application:start(rivus_cep).

QueryStr = "define correlation2 as
                  select ev1.eventparam1, ev2.eventparam2, sum(ev2.eventparam3) 
                  from event1 as ev1, event2 as ev2
                   where ev1.eventparam2 = ev2.eventparam2
                    within 60 seconds; ".

Producer = event_producer_1.
{ok, SubscriberPid} = result_subscriber:start_link().

{ok, QueryPid} = rivus_cep:load_query(QueryStr, [Producer], [SubscriberPid], [{shared_streams, true}]).

%% create some evetnts
Event1 = {event1, gr1,b,10}.
Event2 = {event2, gr2,bbb,20}.

%% send the events
rivus_cep:notify(Producer, Event1).
rivus_cep:notify(Producer, Event2).

%% or if you don't care about the producers
rivus_cep:notify(Event1).
rivus_cep:notify(Event2).
 相关资料
  • 我们需要在constructor中对于事件与对应的handler函数进行绑定. 大多数时候我们在发出DOM事件的组件内部写我们的handler函数. 在下面的例子中,我们在组件内部创建了一个click handler, 因为我们想所有的Swithcer Component当被点击时,做出同样的响应. class Switcher extends React.Component { render

  • 我不喜欢流口水。我正在尝试使用Drools Fusion编写一个简单的复杂事件处理(CEP)应用程序。 我的要求是 我有一个简单的Event类,如下所示: 规则文件如下: 为了进行测试,我将向工作内存中注入4个事件,分别是e1、e2、e3、e4,时间线分别为0m、4m、10m、12m。 Jave类文件 我希望e1通过规则,因为它没有前面的事件。我还预计e3将通过,因为前面的比赛还有6分钟。 但是,

  • 事件处理概述 事件处理是对象化编程的一个很重要的环节,没有了事件处理,程序就会变得很死,缺乏灵活性。事件处理的过程可以这样表示:发生事件 - 启动事件处理程序 - 事件处理程序作出反应。其中,要使事件处理程序能够启动,必须先告诉对象,如果发生了什么事情,要启动什么处理程序,否则这个流程就不能进行下去。事件的处理程序可以是任意 JavaScript 语句,但是我们一般用特定的自定义函数(functi

  • Mpx在事件处理上基于原生小程序,支持原生小程序的全部事件处理技术规范,在此基础上新增了事件处理内联传参的增强机制。 原生小程序事件处理详情请参考这里 增强的内联传参能力对于传递参数的个数和类型没有特殊限制,可以传递各种字面量,可以传递组件数据,甚至可以传递for中的item和index, 当内联事件处理器中需要访问原始事件对象时,可以传递$event特殊关键字作为参数,在事件处理器的对应参数位置

  • Rax 元素的事件处理和 HTML 的 DOM 元素类似,但在语法上有一些区别: 事件采用驼峰式命名。 传入函数作为事件处理器而不是字符串。 例如,在 HTML 中为 DOM 元素绑定事件的写法为: <button onclick="activateLasers()">激活按钮</button> <scripts> var activateLasers = function() { al

  • 事件绑定 通过ev-*属性,可以在dom上绑定事件 例如: <button ev-click={function() { alert('点击了按钮') }}>点击按钮</button> 绑定方法 大多数情况下,事件处理函数都比较复杂,直接写在模板中不太优雅。 一般通过将事件处理传入模板的render方法,来进行绑定 例如: <button ev-click={onClick.bind(self)

  • Nerv 元素的事件处理和 DOM 元素的很相似。但是有一点语法上的不同: Nerv 事件绑定属性的命名采用驼峰式写法,而不是小写。 如果采用 JSX 的语法你需要传入一个函数作为事件处理函数,而不是一个字符串(DOM元素的写法) 例如,传统的 HTML: <button onclick="activateLasers()"> Activate Lasers </button> Nerv 中

  • {% include './share/simple-component.md' %} 可以看到 React 里面绑定事件的方式和在 HTML 中绑定事件类似,使用驼峰式命名指定要绑定的 onClick 属性为组件定义的一个方法 {this.handleClick.bind(this)}。 注意要显式调用 bind(this) 将事件函数上下文绑定要组件实例上,这也是 React 推崇的原则:没有