RMI (रिमोट मेथड इनवोकेशन) एक JVM में ऑब्जेक्ट को दूसरे JVM में ऑब्जेक्ट के मेथड्स को इनवोक करने की अनुमति देता है। यह java.rmi पैकेज में है।
RMI एप्लिकेशन के चरण
1. रिमोट इंटरफेस परिभाषित करें
import java.rmi.Remote;
import java.rmi.RemoteException;
public interface Hello extends Remote {
void printMsg() throws RemoteException;
}2. कार्यान्वयन क्लास विकसित करें
public class ImplExample implements Hello {
public void printMsg() {
System.out.println("Hello from RMI server!");
}
}3. सर्वर प्रोग्राम विकसित करें
import java.rmi.registry.*;
import java.rmi.server.UnicastRemoteObject;
public class Server {
public static void main(String args[]) {
try {
ImplExample obj = new ImplExample();
Hello stub = (Hello) UnicastRemoteObject.exportObject(obj, 0);
Registry registry = LocateRegistry.createRegistry(1099);
registry.bind("Hello", stub);
System.out.println("Server ready");
} catch (Exception e) {
e.printStackTrace();
}
}
}4. क्लाइंट प्रोग्राम विकसित करें
import java.rmi.registry.*;
public class Client {
public static void main(String[] args) {
try {
Registry registry = LocateRegistry.getRegistry("localhost", 1099);
Hello stub = (Hello) registry.lookup("Hello");
stub.printMsg();
} catch (Exception e) {
e.printStackTrace();
}
}
}5. संकलन और निष्पादन
# संकलन javac *.java # RMI रजिस्ट्री शुरू करें (अलग टर्मिनल) rmiregistry # सर्वर चलाएं java Server # क्लाइंट चलाएं java Client
आउटपुट
Server ready Hello from RMI server!
नोट
आधुनिक विकल्प: REST APIs, gRPC, Spring Remoting। RMI मुख्य रूप से विरासत Java-टू-Java संचार के लिए है।