DHPC Adelaide

DHPC Technical Report DHPC-072

Implementing Asynchronous Remote Method Invocation in Java

K.E. Kerry Falkner, P.D. Coddington and M.J. Oudshoorn

Archived: 2 July 1999

Published in Proc. of Parallel and Real Time Systems (PART'99), Melbourne, November 1999.

Abstract

Java's Remote Method Invocation is an example of a synchronous communication mechanism with a well defined protocol. Many software systems require more flexibility in their communication mechanisms, including asynchronous communication and delayed referencing of objects (Futures). This paper introduces a novel mechanism allowing Java remote objects to use extended communication protocols without changes to the underlying wire or serialisation protocols. These extensions can be utilised by standard remote objects without additional coding changes and can be incorporated with standard Java clients. This paper explores the possibilities of implementing client controlled versus server controlled asynchronous communication and dynamic selection of protocols through the use of a precompiler for the remote object classes. A discussion of the possibility of integrating Futures and Batched Futures, and any required programming abstractions, into this mechanism is conducted. It is proposed that this mechanism can be used in any object system that is based on Fragmented Objects, which use a stub or proxy to provide transparent access to remote server methods.

Keywords: Java, RMI, Asynchronous, Futures, Remote Method Invocation.

PDF version

PostScript version (gzip compressed)


[ DHPC Adelaide | DHPC Bangor | Contacts | People | Projects | Reports ]

webmaster@dhpc.adelaide.edu.au