RMI, IIOP e RMI - IIOP
I concetti di base di RMI - IIOP e altre tecnologie simili.
RMI
Con RMI, è possibile scrivere programmi distribuiti nel linguaggio di programmazione Java™ . RMI è facile da utilizzare, non è necessario apprendere un IDL (interface definition language) separato e si ottiene il vantaggio "write once, run anywhere" di Java. I client, le interfacce remote e i server sono scritti interamente in Java. RMI utilizza JRMP (Java Remote Method Protocol) per la comunicazione dell'oggetto Java remoto. Per una rapida introduzione alla scrittura di programmi RMI, consultare la pagina web dell'esercitazione RMI: https://docs.oracle.com/javase/tutorial/rmi/, che descrive la scrittura di un semplice programma RMI "Hello World".
RMI non dispone di interoperabilità con altri linguaggi e, poiché utilizza un protocollo di comunicazioni non standard, non può comunicare con oggetti CORBA.
IIOP, CORBA e Java IDL
IIOP è il protocollo di comunicazione CORBA. Definisce il modo in cui i bit vengono inviati su un collegamento tra i client CORBA e i server. CORBA è un'architettura di oggetti distribuiti standard sviluppata da OMG (Object Management Group). Le interfacce per gli oggetti remoti sono descritte in un IDL (interface definition language) neutro della piattaforma. Le associazioni da IDL a specifici linguaggi di programmazione sono implementate, collegando il linguaggio a CORBA/IIOP.
L'implementazione Java Standard Edition CORBA/IIOP è nota come Java IDL. Insieme al compilatore IDL a Java (idlj), Java IDL può essere utilizzato per definire, implementare e accedere agli oggetti CORBA dal linguaggio di programmazione Java.
La pagina Web IDL Java: Java IDL (CORBA), fornisce una buona vista incentrata su Java della programmazione CORBA/IIOP. Per una rapida introduzione alla scrittura di programmi IDL Java, consultare la pagina Introduzione: Hello World Web: Introduzione a Java IDL.
RMI-IIOP
Precedentemente, i programmatori Java dovevano scegliere tra RMI e CORBA/IIOP (Java IDL) per le soluzioni di programmazione distribuita. Ora, aderendo ad alcune restrizioni (consultare Limitazioni durante l'esecuzione di programmi RMI su IIOP), gli oggetti server RMI possono utilizzare il protocollo IIOP e comunicare con gli oggetti client CORBA scritti in qualsiasi lingua. Questa soluzione è nota come RMI - IIOP. RMI - IIOP combina la semplicità di utilizzo RMI con l'interoperabilità cross - language CORBA.
Lettura in background
- La home page di Java RMI contiene collegamenti alla documentazione RMI, esempi, specifiche e altro ancora: https://www.oracle.com/technetwork/java/javase/tech/index-jsp-136424.html
- La traccia RMI nell'esercitazione Java: https://docs.oracle.com/javase/tutorial/rmi/
- L'HTML Javadoc API RMI contiene la documentazione API RMI più aggiornata: https://docs.oracle.com/javase/8/docs/api/java/rmi/package-summary.html
- La pagina Web IDL Java familiarizza con l'implementazione CORBA/IIOP di Oracle: https://docs.oracle.com/javase/8/docs/technotes/guides/idl/index.html
- Il percorso IDL Java nel supporto didattico Java: https://docs.oracle.com/javase/8/docs/technotes/guides/idl/GShome.html