A flexible, policy-aware middleware system
Abstract
Middleware augments operating systems and network infrastructure to assist in
the creation of distributed applications in a heterogeneous environment. Current
middleware systems exhibit some or all of the following five main problems:
1. Decisions must be made early in the design process.
2. Applications are inflexible to dynamic changes in their distribution.
3. Application development is complex and error-prone.
4. Existing systems force an unnatural encoding of application-level semantics.
5. Approaches to the specification of distribution policy are limited.
This thesis defines a taxonomy of existing middleware systems and describes their
limitations. The requirements that must be met by a third generation middleware system
are defined and implemented by a system called the RAFDA Run-Time (RRT). The RRT
allows control over the extent to which inter-address-space communication is exposed to
programmers, aiding the creation, maintenance and evolution of distributed applications.
The RRT permits the introduction of distribution into applications quickly and
with minimal programmer effort, allowing for quick application prototyping.
Programmers can conceal or expose the distributed nature of applications as required. The RRT allows instances of arbitrary application classes to be exposed to remote access as Web Services, provides control over the parameter-passing semantics applied to
remote method calls and permits the creation of flexible distribution policies. The design of the RRT is described and evaluated qualitatively in the context of a case study based around the implementation of a peer-to-peer overlay network. A prototype implementation of the RRT is examined and evaluated quantitatively.
Programmers determine the trade off between flexibility and simplicity offered by
the RRT on a per-application basis, by concealing or exposing inter-address-space
communication. The RRT is a middleware system that adapts to the needs of applications, rather than forcing distributed applications to adapt to the needs of the middleware system.
Type
Thesis, PhD Doctor of Philosophy
Rights
Creative Commons Attribution-NonCommercial-NoDerivs 2.5 Generic
http://creativecommons.org/licenses/by-nc-nd/2.5/
Collections
Except where otherwise noted within the work, this item's licence for re-use is described as Creative Commons Attribution-NonCommercial-NoDerivs 2.5 Generic
Items in the St Andrews Research Repository are protected by copyright, with all rights reserved, unless otherwise indicated.