RMI এর কাজের ধাপগুলো

RMI এর কাজের প্রক্রিয়া - জাভা আরএমআই (Java RMI) - Java Technologies

316

Java RMI (Remote Method Invocation) হল একটি প্রযুক্তি যা একটি জাভা অ্যাপ্লিকেশন থেকে দূরবর্তী (remote) মেশিনে অবস্থিত একটি অবজেক্টের মেথড কল করার অনুমতি দেয়। এটি Distributed Applications তৈরিতে ব্যবহৃত হয়। RMI কাজ করার জন্য কিছু নির্দিষ্ট ধাপ অনুসরণ করতে হয়।


RMI এর কাজের ধাপগুলো

1. Interface তৈরি করা

RMI-তে, প্রথম ধাপ হল একটি Remote Interface তৈরি করা। এটি সেই মেথডগুলোকে ডিফাইন করে যেগুলো ক্লায়েন্ট রিমোট সার্ভারে কল করবে।

উদাহরণ:

import java.rmi.Remote;
import java.rmi.RemoteException;

public interface Hello extends Remote {
    String sayHello(String name) throws RemoteException;
}

2. Server Implementation তৈরি করা

Remote Interface এর একটি বাস্তবায়ন (implementation) তৈরি করা হয়। এই ক্লাসটি Remote Interface কে implements করে।

উদাহরণ:

import java.rmi.server.UnicastRemoteObject;
import java.rmi.RemoteException;

public class HelloImpl extends UnicastRemoteObject implements Hello {
    protected HelloImpl() throws RemoteException {
        super();
    }

    @Override
    public String sayHello(String name) throws RemoteException {
        return "Hello, " + name + "!";
    }
}

3. Server তৈরি এবং Remote Object Bind করা

RMI Registry-তে Remote Object রেজিস্টার করা হয় যাতে ক্লায়েন্ট এটি খুঁজে পেতে পারে।

উদাহরণ:

import java.rmi.registry.LocateRegistry;
import java.rmi.registry.Registry;

public class Server {
    public static void main(String[] args) {
        try {
            // Remote Object তৈরি
            HelloImpl obj = new HelloImpl();

            // RMI Registry শুরু করা
            Registry registry = LocateRegistry.createRegistry(1099);

            // Remote Object Bind করা
            registry.rebind("HelloService", obj);

            System.out.println("Server is ready!");
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}

4. Client তৈরি করা

ক্লায়েন্ট RMI Registry থেকে রিমোট অবজেক্ট খুঁজে বের করে এবং মেথড কল করে।

উদাহরণ:

import java.rmi.registry.LocateRegistry;
import java.rmi.registry.Registry;

public class Client {
    public static void main(String[] args) {
        try {
            // RMI Registry থেকে রিমোট অবজেক্ট খুঁজে বের করা
            Registry registry = LocateRegistry.getRegistry("localhost", 1099);
            Hello stub = (Hello) registry.lookup("HelloService");

            // রিমোট মেথড কল করা
            String response = stub.sayHello("John");
            System.out.println("Response from server: " + response);
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}

5. RMI Registry চালু করা

RMI Registry চালু করার জন্য rmiregistry কমান্ড ব্যবহার করতে হয়:

rmiregistry

6. Server এবং Client কোড চালানো

  1. Server চালান:

    java Server
    
  2. Client চালান:

    java Client
    

RMI কাজের পূর্ণাঙ্গ ধাপ:

  1. Interface তৈরি করা: ক্লায়েন্ট-সার্ভারের মধ্যে Remote মেথডের জন্য একটি ইন্টারফেস তৈরি করুন।
  2. Implementation তৈরি করা: Remote Interface এর বাস্তবায়ন করুন।
  3. Registry তৈরি এবং Bind করা: সার্ভারে অবজেক্ট রেজিস্টার করুন।
  4. Client তৈরি করা: RMI Registry থেকে রিমোট অবজেক্ট পান এবং মেথড কল করুন।
  5. RMI Registry চালু করা: RMI Registry চালু করুন।
  6. Server এবং Client চালান।

RMI এর সুবিধা:

  1. Distributed Systems: বিভিন্ন মেশিনের মধ্যে যোগাযোগ সহজ করে।
  2. Abstract Communication: ক্লায়েন্ট-সার্ভার কমিউনিকেশন সহজ এবং ব্যবহারকারী থেকে কমপ্লেক্সিটি গোপন থাকে।
  3. Java-to-Java Communication: পুরোপুরি জাভা বেসড পরিবেশে ব্যবহার করা যায়।

RMI এর সীমাবদ্ধতা:

  1. শুধুমাত্র জাভা অ্যাপ্লিকেশনগুলোর মধ্যে কাজ করে।
  2. Security এবং Firewall সমস্যা হতে পারে।
  3. অন্যান্য Distributed Technologies এর তুলনায় তুলনামূলকভাবে ধীর।
Content added By
Promotion

Are you sure to start over?

Loading...