Saturday, October 25, 2025
HomeLanguagesJavaDifference Between RMI and DCOM

Difference Between RMI and DCOM

In this article, we will see differences between Remote Method Invocation(RMI) and Distributed Component Object Model(DCOM). Before getting into the differences, let us first understand what each of them actually means.

RMI applications offer two separate programs, a server, and a client. There are some tasks that are performed by the server program i.e. to create some remote objects, to make references to objects, and also to wait for the clients so that they invoke methods on these objects. A client obtains a remote reference to one or more remote objects on a server and invokes methods on them. Basically, RMI provides the mechanism through which the server and client can communicate and pass information back and forth. The RMI consists of three layers:

  • Stub/Skeleton layer
  • Remote Reference layer
  • Transport layer

The relationship among these layers is as shown in the following figure:

DCOM is Microsoft’s solution for Distributed computing. It allows one client application to remotely start a DCOM server object on another machine and invoke its methods. It gives features like language independence, ability to communicate using TCP/IP, UDP, IP, IPX/SPX, and HTTP and static/dynamic invocation of objects. It is best suited for an environment that is Microsoft product-oriented. It includes the following functions:

  • Locating and loading remote classes.
  • Locating remote objects and providing references to them.
  • Enabling remote method calls.

The following table describes the differences:

RMI

DCOM

In RMI every server object implements java.rmi.Remote interface. In DCOM every object implements IUnknown.
It uses JRMP as its underlying remoting protocol. It uses Object Remote Procedure Call as its underlying remoting protocol.
The mapping of an object name to its implementation is handled by the RMIRegistry. The mapping of an object name to its implementation is handled by the Registry.
The responsibility of locating object implementations falls on JVM. The responsibility of locating object implementations falls on Server Control Management.
Dominic
Dominichttp://wardslaus.com
infosec,malicious & dos attacks generator, boot rom exploit philanthropist , wild hacker , game developer,
RELATED ARTICLES

Most Popular

Dominic
32361 POSTS0 COMMENTS
Milvus
88 POSTS0 COMMENTS
Nango Kala
6728 POSTS0 COMMENTS
Nicole Veronica
11892 POSTS0 COMMENTS
Nokonwaba Nkukhwana
11954 POSTS0 COMMENTS
Shaida Kate Naidoo
6852 POSTS0 COMMENTS
Ted Musemwa
7113 POSTS0 COMMENTS
Thapelo Manthata
6805 POSTS0 COMMENTS
Umr Jansen
6801 POSTS0 COMMENTS