Title :
A framework managing quality of service contracts in distributed applications
Author :
Lorcy, Stephane ; Plouzeau, Noel ; Jezequel, Jean-Marc
Author_Institution :
IRISA, Campus de Beaulieu, Rennes, France
Abstract :
Designers and implementers of distributed applications have to deal with many difficult problems, such as concurrency control, distributed communication, fault-tolerance, quality of service management. Finding object-oriented solutions to these problems is a very active topic of research and development. Carefully chosen design patterns can help to reverse solutions for distributed application problems. We show how design patterns may allow a designer and developer to manage quality of service issues of distributed object interaction (e.g. when an object invokes a method on another remote object). Interactions between distributed objects (method invocation, remote method execution, result return) may be disturbed by network phenomena such as message losses, variation of transmission latency or bandwidth, link or site crashes. Robust distributed applications must deal with these events in a structured way. We present a contract-based execution framework which helps the application developer in building these mechanisms. To achieve this, we use a reification of the well-known contract notion and provide a set of abstract classes for managing the quality of service. We then describe our framework which provides concrete classes for performing remote method invocations under various distributed execution semantics, e.g. time bounded, atomic execution of a method by a group of objects scattered in the network. As an example of contract based application, we detail the architecture of a distributed interactive virtual space browser built on our framework
Keywords :
distributed processing; object-oriented programming; remote procedure calls; bandwidth; concurrency control; contract-based execution framework; design patterns; distributed applications; distributed communication; distributed object interaction; fault-tolerance; interactive virtual space browser; message loss; object-oriented programming; quality of service contracts; remote method execution; remote method invocation; transmission latency; Bandwidth; Computer crashes; Concurrency control; Contracts; Delay; Fault tolerance; Propagation losses; Quality management; Quality of service; Research and development;
Conference_Titel :
Technology of Object-Oriented Languages, 1998. TOOLS 26. Proceedings
Conference_Location :
Santa Barbara, CA
Print_ISBN :
0-8186-8482-8
DOI :
10.1109/TOOLS.1998.711008