Simple Asynchronous Remote Invocations for Distributed Real-Time Java

More and more, the use of real-time distribution middlewares programmed with high-level languages like Java is becoming of interest for industrial systems because this type of infrastructures reduce development efforts required to both design and maintain complex networked applications. In that way towards having better development tools, this paper deals with the very specific issue of the asynchronism from the particular perspective of Java's distributed technologies. It proposes and evaluates an extension to the Java's remote method invocation (RMI) with additional support for asynchronous remote invocations. Such a mechanism makes the transmission of some messages, typically those that do not require any confirmation from the server, much more efficient than synchronous communications, and consequently they optimize and speed up the performance of many industrial networked applications. In more detail, this paper concerns with the model itself and the set of changes it requires within their middleware programming interfaces and inside communication protocols to accommodate the proposed model. The proposal is supported by empirical evidences from a prototype developed as partial proof-of-concept.

[1]  Marisol García-Valls,et al.  No-Heap remote objects for distributed real-time Java , 2010, TECS.

[2]  Michael J. Oudshoorn,et al.  Implementing Asynchronous Remote Method Invocation in Java , 1999 .

[3]  Douglas C. Schmidt,et al.  The Design and Performance of a Scalable ORB Architecture for CORBA Asynchronous Messaging , 2000, Middleware.

[4]  Luca Ferrarini,et al.  Encapsulation of IEC 61499 Function Blocks Using Real-Time Java According to the RTSJ , 2004, OTM Workshops.

[5]  Rajeev R. Raje,et al.  Asynchronous Remote Method Invocation (ARMI) mechanism for Java , 1997 .

[6]  Rajeev R. Raje,et al.  Asynchronous Remote Method Invocation (ARMI) Mechanism for Java , 1997, Concurr. Pract. Exp..

[7]  Uwe Zdun,et al.  Patterns for Asynchronous Invocations in Distributed Object Frameworks , 2003, EuroPLoP.

[8]  Pierre Vignéras Transparency and Asynchronous Method Invocation , 2005, OTM Conferences.

[9]  Borzoo Bonakdarpour,et al.  Challenges in transformation of existing real-time embedded systems to cyber-physical systems , 2008, SIGBED.

[10]  Uwe Zdun,et al.  Design and Implementation of an Asynchronous Invocation Framework for Web Services , 2003, ICWS-Europe.

[11]  Marisol García-Valls,et al.  Mode Change Protocols for Predictable Contract-Based Resource Management in Embedded Multimedia Systems , 2009, 2009 International Conference on Embedded Software and Systems.

[12]  E. Douglas Jensen,et al.  Distributed real-time specification for Java: a status report (digest) , 2006, JTRES '06.

[13]  V. T. Rajan,et al.  A real-time garbage collector with low overhead and consistent utilization , 2003, POPL '03.

[14]  Marisol García-Valls,et al.  No Heap Remote Objects: Leaving Out Garbage Collection at the Server Side , 2004, OTM Workshops.

[15]  Marisol García-Valls,et al.  QoS-Aware Real-Time Composition Algorithms for Service-Based Applications , 2009, IEEE Transactions on Industrial Informatics.

[16]  Douglas C. Schmidt,et al.  An overview of the Real-Time CORBA specification , 2000, Computer.

[17]  Marco Tulio Valente,et al.  Asynchronous Remote Method Invocation in Java , 2003, J. Univers. Comput. Sci..

[18]  James Gosling,et al.  The Real-Time Specification for Java , 2000, Computer.

[19]  Marisol García-Valls,et al.  A Synchronous Scheduling Service for Distributed Real-Time Java , 2010, IEEE Transactions on Parallel and Distributed Systems.

[20]  Marisol García-Valls,et al.  Towards the integration of scoped memory in distributed real-time Java , 2005, Eighth IEEE International Symposium on Object-Oriented Real-Time Distributed Computing (ISORC'05).

[21]  Akkihebbal L. Ananda,et al.  A survey of asynchronous remote procedure calls , 1992, OPSR.

[22]  Jonathan S. Anderson,et al.  Distributed Real-Time Specification for Java , 2006 .

[23]  Richard Zurawski Industrial Information Technology Is Coming of Age , 2007, IEEE Trans. Ind. Informatics.

[24]  Jim Waldo Remote procedure calls and Java Remote Method Invocation , 1998, IEEE Concurr..

[25]  REAL TIME EXTENSIONS , 1998 .