Are you an EPFL student looking for a semester project?
Work with us on data science and visualisation projects, and deploy your project as an app on top of GraphSearch.
This paper addresses the fundamental tradeoffs in event systems between scalability (of event filtering, routing, and delivery mechanisms), expressiveness (when describing interests in events), and event safety (ensuring encapsulation and type-safe interaction with polymorphic events). We point out some ramifications underlying these tradeoffs and we propose a pragmatic approach to handle them. We achieve scalability using a multi-stage filtering strategy that combines approximate and perfect matching techniques for the purpose of event routing and filtering. We achieve expressiveness and event safety by viewing events as objects; instances of application-defined abstract types.