EventJava: An Extension of Java for Event Correlation

EventJava: An Extension of Java for Event Correlation
复制标题

EventJava:用于事件关联的 Java 扩展

DOI:
--
复制
发表时间:
2009
期刊:
European Conference on Object-Oriented Programming
影响因子:
--
通讯作者:
K. R. Jayaram
K. R. Jayaram
中科院分区:
--
文献类型:
--
作者:
P. Eugster;K. R. Jayaram

文献摘要

参考文献

被引文献

相似文献

事件关联已经成为许多反应式应用程序的基石,特别是在分布式系统中。然而,对复杂事件编程的支持仍然是相当具体和基本的。本文介绍了EventJava,Java的扩展与通用支持基于事件的分布式编程。EventJava无缝地将事件与方法集成在一起,并将广播与事件的单播集成在一起;它支持对事件组合的反应,以及保护这些反应的谓词。EventJava作为一个框架实现,允许定制事件语义、匹配和调度。我们提出了它的实现,基于编译器转换特定的原语到Java,沿着与参考实现的框架。我们讨论的EventJava通过其核心的形式化作为一个扩展的Featherweight Java的排序属性。在性能评估中,我们表明EventJava相比,毫不逊色的高度调优的数据库支持的事件关联引擎,以及一个轻量级的并发机制。
Event correlation has become the cornerstone of many reactive applications, particularly in distributed systems. However, support for programming with complex events is still rather specific and rudimentary. This paper presents EventJava, an extension of Java with generic support for event-based distributed programming. EventJava seamlessly integrates events with methods, and broadcasting with unicasting of events; it supports reactions to combinations of events, and predicates guarding those reactions. EventJava is implemented as a framework to allow for customization of event semantics, matching, and dispatching. We present its implementation, based on a compiler transforming specific primitives to Java, along with a reference implementation of the framework. We discuss ordering properties of EventJava through a formalization of its core as an extension of Featherweight Java. In a performance evaluation, we show that EventJava compares favorably to a highly tuned database-backed event correlation engine as well as to a comparably lightweight concurrency mechanism.
DOI: --
发表时间: 2006-07
期刊: --
影响因子: --
作者:
Dave A. Thomas
通讯作者: Dave A. Thomas