Java Remote Method Invocation

Java Remote Method Invocation  API (Java RMI) は、Javaで書かれたプログラム間のORB（オブジェクトリクエストブローカー）
であり、RPCのオブジェクトに相当する機能を果たすためのJavaアプリケーションプログラミングインタフェース。

概要 
異なるJava仮想計算機にあるオブジェクトのメソッドを呼び出す仕組み（分散オブジェクト技術）
RMIはトランスポート層などを見えなくする。⇒ 透過性
ソケットによる通信

APIには二つの共通する実装がある。本来の実装は表現メカニズムを分類するJava仮想マシンに依存している。したがって、それは一つのJVMからもう一つのJVMへと呼び出しを作ることだけをサポートする。このJavaのみによる実装の基礎をなすプロトコルはJRMP (Java Remote Method Protocol) として知られている。非JVMコンテキストでのコード実行をサポートするために CORBA (Common Object Request Broker Architecture) 対応が後から開発された。用語 RMI の使い方は単に、プログラミングインタフェースということを示すか、APIとJRMP両方を意味する一方、用語RMI-IIOPはRMIオーバーIIOPと読み、RMIインタフェースはCORBA実装サポート機能性の多くを代表することを意味する。

本来のRMI APIはHTTP転送のような異なる実装をいくぶん概括した。その上、CORBA対応で値渡しの機能を追加し、RMIインタフェースをサポートした。未だに、RMI-IIOPとJRMP実装はそれらのインタフェース内では完全に同一ではない。

このパッケージ名は java.rmi である。

関連項目 
 直列化#Java

脚注

外部リンク 
 The Java RMI tutorial - Java チュートリアル
 Java Remote Method Invocation - JDK ドキュメント 機能リファレンスガイド
 Java RMI 入門
  - Java Platform API 仕様 

Javaプラットフォーム
遠隔手続き呼出し