Abstract
New applications and software environments are increasingly distributed across a large or even unpredictable number of networked computing devices, require mobile and ad-hoc networking capabilities, and must integrate with more systems, all of which create greater demands on the middleware used to realize these systems. On the Java platform, RMI is a well-established paradigm, yet deficiencies become evident in particular with regard to scalability and remote invocation completability – which is the assurance that invocations are executed according to client and service expectations regardless of the state of the participants or the communication network. While the Java Message Service (JMS) addresses these deficiencies, it lacks the simplicity, explicit contracts, clear coupling, and strong typing of an object-oriented invocation paradigm. This paper will describe our Java Invocation Layer for Messaging (JILM), a(n) (a)synchronous invocation layer to support object-oriented invocations while leveraging the unique distribution and QoS properties that JMS provides.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
Arulanthu, A.B., O’Ryan, C., Schmidt, D.C., Kircher, M., Parsons, J.: The Design and Performance of a Scalable ORB Architecture for CORBA Asynchronous Messaging. In: Proceedings of the IFIP/ACM Middleware 2000 Conference (2000)
Bogle, P., Liskov, B.: Reducing Cross Domain Call Overhead Using Batched Futures. In: Proc. OOPSLA 1994. ACM SIGPLAN Notices, vol. 29 (1994)
Buschmann, F., Meunier, R., Rohnert, H., Sommerlad, P., Stal, M.: Pattern-Oriented Software Architecture - A System of Patterns. Wiley and Sons Ltd., Chichester (1996)
Deshpande, M., Schmidt, D.C., O’Ryan, C., Brunsch, D.: The Design and Performance of Asynchronous Method Handling for CORBA. In: Proceedings of the Distributed Objects and Applications (DOA) conference (2002)
Eckerson, W.W.: Three Tier Client/Server Architecture: Achieving Scalability, Performance and Efficiency in Client Server Applications. In: Open Information Systems, vol. 10 (1995)
Gore, P., Cytron, R., Schmidt, D., O’Ryan, C.: Designing and Optimizing a Scalable CORBA Notification Service. In: Proceedings of the ACM SIGPLAN workshop on languages, compilers and tools for embedded systems, pp. 196–204 (2001)
JavaGroups Web Site: http://www.javagroups.com
Karaorman, M., Bruno, J.: Active-RMI: Active Remote Method Invocation System for Distributed Computing using Active Java Objects. In: TOOLS USA (1998)
Keen, A., Ge, T., Maris, J., Olsson, R.: JR: Flexible Distributed Programming in an Extended Java. In: Proceedings of the 21st IEEE International Conference on Distributed Computing Systems (2001)
Kerry Falkner, K.E., Coddington, P.D., Oudshoorn, M.J.: Implementing Asynchronous Remote Method Invocation in Java. University of Adelaide (1999)
Liskov, B., Shrira, L.: Promises: Linguistic Support for Efficient Asynchronous Procedure Calls in Distributed Systems. In: Proc. SIGPLAN 1988 Conf. Programming Language Design and Implementation, pp. 260–267 (1988)
Maassen, J., Kielmann, T., Bal, H.E.: GMI: Flexible and Efficient Group Method Invocation for Parallel Programming. In: LCR 2002: Sixth Workshop on Languages, Compilers, and Run-time Systems for Scalable Computers. LNCS. Springer, Heidelberg (2002)
Nelisse, A., Maassen, J., Kielmann, T., Bal, H.E.: CCJ: Object-based Message Passing and Collective Communication in Java. Concurrency and Computation: Practice and Experience 15(3-5), 341–369 (2003)
van Nieuwpoort, R., Maassen, J., Bal, H., Kielmann, T., Veldema, R.: Wide-area parallel computing in Java. In: Proc. ACM 1999 Java Grande Conference, pp. 8–14 (1999)
NinjaRMI Web Site: http://www.eecs.harvard.edu/~mdw/proj/old/ninja/index.html
Object Management Group: Common Object Request Broker Architecture (CORBA) Core Specification, 3.0 ed
Object Management Group: Data Parallel CORBA Specification (May 1, 2002)
OpenJMS Web Site, http://openjms.sourceforge.net/
Raje, R., Williams, J., Boyles, M.: An Asynchronous Remote Method Invocation (ARMI) Mechanism for Java. In: Proc. of the ACM 1997 Workshop on Java for Science and Engineering Computation (1997)
Schmidt, D., Stal, M., Rohnert, H., Buschmann, F.: Pattern-Oriented Software Architecture, Patterns for Concurrent and Networked Objects, vol. 2. Wiley and Sons Ltd., Chichester (2000)
Sun Microsystems: Java 2 Platform Standard Edition version 1.4.1
Sun Microsystems: Java Message Service Specification, version 1.1 (2002)
Sun Microsystems: Jini Architecture Specification, version 1.2 (2001)
Walker, E.F., Floyd, R., Neves, P.: Asynchronous Remote Operation Execution In Distributed Systems. In: Proc. of the Tenth International Conference on Distributed Computing Systems (1990)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2003 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Jank, K., Oberhauser, R. (2003). An Object-Oriented Invocation Layer for the Java Message Service. In: Meersman, R., Tari, Z. (eds) On The Move to Meaningful Internet Systems 2003: OTM 2003 Workshops. OTM 2003. Lecture Notes in Computer Science, vol 2889. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-39962-9_19
Download citation
DOI: https://doi.org/10.1007/978-3-540-39962-9_19
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-20494-7
Online ISBN: 978-3-540-39962-9
eBook Packages: Springer Book Archive