Java RMI 完整版
Java Remote Method Invocation(RMI)是一种分布式对象技术,允许使用 Java 编写分布式对象,不同的 Java 虚拟机(JVM)之间进行对象间的通讯。这使得应用程序(Application)可以远程调用方法,共享各个系统的资源和处理能力。RMI 为采用 Java 对象的分布式计算提供了简单而直接的途径。
RMI 的优点包括:
1. 面向对象:RMI 可将完整的对象作为参数和返回值进行传递,而不仅仅是预定义的数据类型。
2. 可移动属性:RMI 可将属性(类实现程序)从客户机移动到服务器,或者从服务器移到客户机。
3. 安全:RMI 使用 Java 内置的安全机制保证下载执行程序时用户系统的安全。
4. 便于编写和使用:RMI 使得 Java 远程服务程序和访问这些服务程序的 Java 客户程序的编写工作变得轻松、简单。
5. 可连接现有 / 原有的系统:RMI 可通过 Java 的本机方法接口 JNI 与现有系统进行交互。
6. 分布式垃圾收集:RMI 采用其分布式垃圾收集功能收集不再被网络中任何客户程序所引用的远程服务对象。
7. 并行计算:RMI 采用多线程处理方法,可使您的服务器利用这些 Java 线程更好地并行处理客户端的请求。
RMI 是 Java 平台的核心部分,存在于任何一台 1.1 Java 虚拟机中。所有 RMI 系统均采用相同的公开协议,所以所有 Java 系统均可直接相互对话,而不必事先对协议进行转换。
CORBA(Common Object Request Broker Architecture)是 OMG(Object Management Group)提出的一个分布式对象技术的规范。CORBA 标准主要分为 3 个层次:对象请求代理、公共对象服务和公共设施。CORBA 的特点是大而全,互操作性和开放性非常好。
Java RMI 和 CORBA 均是分布式对象技术,但它们有所不同。RMI 是 Java 平台的核心部分,而 CORBA 是一个独立的规范。RMI 使得 Java 远程服务程序和访问这些服务程序的 Java 客户程序的编写工作变得轻松、简单,而 CORBA 则提供了一个更为复杂的分布式对象系统。
在 Java 分布式计算解决方案中,RMI 和 CORBA 均扮演着重要的角色。RMI 提供了简单而直接的分布式计算途径,而 CORBA 则提供了一个更为复杂的分布式对象系统。