PhDOOS Logo

Supported by AITO.

These pages are currently maintained by Alex Potanin

 

Scalable Event-Based Infrastructures for Distributed Systems

Peter Pietzuch
( German )

University of Cambridge Computer Laboratory
Computer Laboratory University of Cambridge JJ Thomson Avenue Cambridge CB3 0FD United Kingdom
tel: +44 1223 763617
fax: +44 1223 334678
Peter.Pietzuch@cl.cam.ac.uk

Keywords:

distribution frameworks typing middleware publish/subscribe events large-scale applications

Abstract:

Middleware systems like CORBA or Java RMI have proven to be a useful abstraction for building distributed systems. They provide a common higher-level interface to the application programmer and hide the complexity of dealing with heterogeneous platforms and networks. However, object-oriented, invocation-based middleware was first introduced in the context of local area networks. Today, with the advent of the Internet, large-scale distributed applications can be built that have different requirements which cannot be addressed by traditional middleware. For instance, network and node failures are common in Internet-wide systems and should not be considered exceptional. One of the shortcomings of the invocation-based, client/server model is that it tries to abstract away from these issues by treating remote method invocations similar to local ones. In addition, the distributed application programmer does not necessary control all aspects of the system, in particular, he might not know the identities of all involved parties. It seems that a new middleware paradigm is necessary that addresses these changed requirements. In our work, we argue that event-based, publish/subscribe communication can help to solve this problem by giving a clean model of a distributed system in terms of event ! ! publishers and subscribers. It gives an intuitive way to reason about a distributed system using events, and can be efficiently implemented with asynchronous message-passing.

Our research focuses on providing an event-based middleware architecture that is powerful and flexible enough to build large-scale, Internet-wide distributed applications. This means that, in addition to scalable event dissemination algorithms, we need to provide traditional middleware functionality such as language bindings, object typing, reliability guarantees, security mechanism etc in an event-based context. Higher-level abstractions like composite event pattern detection result in more expressive power. Current publish/subscribe systems only exist as information dissemination systems without being generic middleware architectures.

So far, we have implemented Hermes, a distributed event-based middleware. Hermes considers events to be typed objects and uses a logical network of event brokers for content-based event routing. It uses peer-to-peer techniques for routing and organising the logical event broker network. Its design is intrinsically scalable, and it can easily be extended to provide higher-level services. We have looked at distributed composite event detection within the Hermes framework. This enables the distributed application programmer to delegate the resource intensive task of composite event detection to the event-based middleware. Mobile composite event detectors are automatically installed at various points in the system and present the user with composite event objects that can be manipulated with an object-oriented language such as Java or C++. Currently, we are working on a simulation environment which we can be used to investigate the cost of different distribution strategies for com! ! posite event detectors in the system.

The PhD work started: October 2000



HTML3
JAVA

 


Last modified on Mon Aug 15 14:59:24 2005