RMI i RMI-IIOP

Ten opis porównuje dwa typy komunikacji zdalnej w języku Java™; Remote Method Invocation (RMI) i RMI-IIOP.

RMI jest tradycyjną formą komunikacji w języku Java. Jest to obiektowa wersja zdalnego wywołania procedury (Remote Procedure Call-RPC). Używa nieznormalizowanego protokołu Java Remote Method Protocol (JRMP) do komunikowania się między obiektami Java. Zapewnia to łatwy sposób dystrybucji obiektów, ale nie pozwala na współdziałanie między językami programowania.

RMI-IIOP jest rozszerzeniem tradycyjnego języka Java RMI, który korzysta z protokołu IIOP. Ten protokół umożliwia obiektom RMI komunikowanie się z obiektami CORBA. Programy Java mogą zatem współdziałać w sposób przezroczysty z obiektami napisanych w innych językach programowania, pod warunkiem, że te obiekty są zgodne ze standardem CORBA-compliant. Obiekty mogą być nadal eksportowane do tradycyjnego systemu RMI (JRMP) i mogą komunikować się z dwoma protokołami.

Między dwoma protokołami istnieje różnica w terminologii. W środowisku RMI (JRMP) obiekty serwera są nazywane szkieletami; na RMI-IIOP są one nazywane powiązańami. Obiekty klienta są nazywane kodami pośrednicznymi w obu protokołach.