Actor 模型框架(例如Orleans)和复杂事件处理(CEP)(例如Apache Storm )有什么区别?
这些方法中的每一种都适用(或者一种比另一种更适用)的使用示例肯定会有所帮助。
Actor 模型框架(例如Orleans)和复杂事件处理(CEP)(例如Apache Storm )有什么区别?
这些方法中的每一种都适用(或者一种比另一种更适用)的使用示例肯定会有所帮助。
Apache Storm 是一个分布式实时计算系统(来源:项目网站)。
CEP 是复杂事件处理,它关注跟踪和分析(处理)有关发生的事情(事件)的信息(数据)流,并从中得出结论。(来源:维基)
他们是两个不同的东西。Storm 本身不执行任何分析,除非您部署自己的代码来执行所述分析。这使您的代码执行 CEP,而不是 Storm。您可以使用 Storm 进行 CEP,也可以使用 JMS 或其他方式。
基于 Actor 的框架(例如 Akka 或 Orleans)也是托管执行 CEP 的自定义事件分析代码的候选者。
我对 Actor 模型不是很熟悉,但据我所知,它是比 CEP 更低级别、更通用的模式。
CEP 也称为事件流处理。它通常是关于实时处理大量、快速的数据流。它是关于发现数据中的模式并对其采取行动,或丰富数据或(聪明地)过滤数据。
您可以使用 Actor Model 来实现 CEP 引擎,但这不是唯一的方法。Actor 模型似乎也适用于 CEP 以外的事物。