目次:
定義-リモートメソッド呼び出し(RMI)とはどういう意味ですか?
リモートメソッド呼び出し(RMI)は、Javaプログラミング言語用にSunが開発した分散オブジェクト技術です。 これは、オブジェクトインターフェイスがJavaインターフェイスとして定義され、オブジェクトのシリアル化を使用する、コアJavaアプリケーションプログラミングインターフェイス(API)の一部として利用可能です。
RMIでは、Javaメソッドがリモートオブジェクトを参照し、リモートオブジェクトのメソッドを呼び出すことができます。 リモートオブジェクトは、別のJava仮想マシン、同じホスト、またはネットワーク上のまったく異なるホストに存在する場合があります。 RMIは、オブジェクトのシリアル化を通じてメソッド引数をマーシャリングおよびアンマーシャリングし、ネットワークを介したクラスファイルの動的ダウンロードをサポートします。
Techopediaは、Remote Method Invocation(RMI)について説明しています
リモートメソッド呼び出しは、Java Development Kit(JDK)1.1で初めて導入され、分散オブジェクトコンピューティングで広く使用されています。 リモートプロシージャコールのオブジェクト指向の等価性を実行します。 RMI機能はjava.rmiパッケージに含まれており、Javaベースのアプリケーションに分散オブジェクト機能を提供します。
RMIアーキテクチャは、Javaアーキテクチャの堅牢性と安全性を分散コンピューティングの世界に拡張します。 RMIでは、そのコードが動作を定義および実装して、異なるJava仮想マシン上にとどまることができます。 RMIのリモートサービスは、実装がクラスでコーディングされるJavaインターフェイスを使用してコーディングされます。 最初のクラスでは、動作の実装はサーバー上で実行されます。 2番目のクラスはクライアントで実行され、リモートサービスのプロキシとして機能します。
RMI実装は、スタブおよびスケルトンレイヤー、リモートリファレンスレイヤー、トランスポートレイヤーの3つの抽象レイヤーから構築されます。 スタブおよびスケルトンレイヤーは、開発者のビューのすぐ下にあります。 スタブオブジェクトとスケルトンオブジェクトは、クライアントとリモートオブジェクト間の接続を提供するために使用されます。 スタブは、メソッド呼び出しをクライアントからサーバーに転送し、リンクを介してスタブと通信する方法を認識しています。 したがって、リモートオブジェクトの実装が存在するプロキシとして機能します。 クライアントによるリモートオブジェクトへの参照は、文字通りローカルスタブへの参照です。 クライアントは、スタブオブジェクトのローカルコピーを収容します。 スケルトンは、リモートオブジェクト実装への呼び出しをディスパッチするメソッドを保持します。
RMIアプリケーションを設計する手順は次のとおりです。
- リモートインターフェイスを定義し、クライアントオブジェクトとリモートオブジェクトを実装します。
- ソースをコンパイルし、スタブとスケルトンを生成します。
- 必要なクラスネットワークをアクセス可能にします。
- アプリケーションを実行します。
