Browse Prior Art Database

A mechanism for Inter-object communication using publish/subscribe messaging

IP.com Disclosure Number: IPCOM000030478D
Original Publication Date: 2004-Aug-17
Included in the Prior Art Database: 2004-Aug-17
Document File: 5 page(s) / 111K

Publishing Venue

IBM

Abstract

A mechanism for inter-object communication between remote objects using publish/subscribe messaging and its concepts of publisher, subscribers and topic hierarchies. Objects can be defined in any object-oriented languages like Java, .Net and C++. Communicating objects can exist in the same execution environment, different execution environments on the same machine as well as different execution environments on different machines. Across these , the method allows objects to communicate in a location transparent manner. A publish/subscribe topic based hierarchy is proposed for object addressing and inter-object communication.

This text was extracted from a PDF file.
At least one non-text object (such as an image or picture) has been suppressed.
This is the abbreviated version, containing approximately 28% of the total text.

Page 1 of 5

A mechanism for Inter-object communication using publish/subscribe messaging

The invention provides a solution for inter-object communication between objects that exist in the same or different execution environments where an example of an execution environment is the Java* Virtual Machine. Inter-object communication is often required between objects running in separate applications. This invention provides a mechanism for the communicating objects (applications) to run in the same execution environment, different execution environments on the same machine as well as different execution environments on different machines. The invention applies to objects as defined by an object-oriented language like Java. It provides the means for objects in one application to talk to the remote objects in another application without necessary knowing where those objects are located or being aware of the fact that they are remote.

    A solution to this problem is Java Remote Method (RMI) Invocation. RMI does not provide an assured messages delivery mechanism. It also requires an initial look-up step to be performed to locate the remote object. RMI also suffers from the limitation that objects have to be on-line in order to communicate with each other. There is no provision for asynchronous messaging. In addition RMI is a point-to-point communication mechanism rather than a one-to-many communication mechanism.

    Further information on RMI can be found at http://java.sun.com/products/jdk/rmi/

    This invention provides a mechanism for inter-object communication between remote objects using publish/subscribe messaging and its concepts of publisher, subscribers and topic hierarchies. Objects can be defined in any object-oriented languages like Java, .Net and C++.

Advantages of this invention over RMI are as follows:

RMI does not offer the reliability that can be provided by a publish/subscribe messaging middleware. Certain messaging protocols can provide assured once only delivery of messages which RMI cannot (are we 100% sure about this!)

A publish/subscribe approach to inter-object communication removes the need for the remote object to be located in order to be able to communicate with it. Messages are delivered in a location independent and transparent manner. Messages published on the right topics are delivered to their destination objects without the publisher needing to know their location.

In RMI, there is no provision for asynchronous messaging provided by some publish/subscribe protocols. This allows messages to be stored and then delivered to objects when they come on-line.

Publish/Subscribe messaging can also be used to provide an object awareness feature where an object can publish a status message as and when it's on-line, off-line status changes.

Using publish/subscribing messaging allows an object to send a message to multiple remote objects at the same time. RMI is point-to-point in nature. One-to-many messaging would allow inter-object comm...