我读了很多关于 NEsper 的文章并尝试了示例代码。我有一些问题 :
- 它是一个事件处理器引擎,它如何获取事件?
- 它在哪里保存数据?
- 当它轮询它?
- 谁来投票?
- 我下载了一个项目,比如大项目,如果我想使用NEsper我必须使用该项目吗?我必须建立另一个项目?我该如何使用它?
去年我使用了 Esper 的 Java 实现。Nesper 是同一产品的 .NET 实现。基本上,
简而言之,一个用于事件处理的库,但我不会称它为引擎。事件可以从您想要的任何来源传递到您的实现,通常您封装数据(作为 POJO)并将其传递到处理运行时,然后一旦找到“模式”,它将立即执行您的查询。
事件处理模型并不意味着数据存储。事件通过引擎移动,并根据您的查询缓存一些元素以匹配条件。不需要数据库或存储库。
当找到一个模式并且可以触发复合(“复杂”)事件时。
信息本身。与数据库查询(您在其中提取信息)相比,数据被推送到引擎中,并对数据流执行一组操作。如果您的项目需要,您可以设置计时器和类似的东西。
从简单的事情开始。像本教程一样 这是用 Java 编写的,但我想使用 .NET 语言实现它不会那么难。
好运。
扩展上面的答案。
它在哪里保存数据?
根据您使用的模式(窗口),Esper 会在内存中保留一些数据。
如果您的机器/应用程序重新启动会发生什么?Esper 将丢失状态(在内存缓存数据中)。为此,Esper 提供许可证EsperHA,因此您可以管理机器外部的状态(如 redis 缓存)