分布式对象范型
分布式对象范型是在消息传递模型之上提供抽象的一种范型,是基于分布式系统中对象一种计算范型,使用它用户可以访问网络上的对象(即分布式对象)。分布式对象范型的核心是操作调用,而传递的数据承担辅助角色。
远程方法调用(RMI)
RMI(Remote Method Invocation)即远程方法调用,是分布式计算的关键。RMI是RPC模型的面向对象实现,是一种用于实现远程过程调用的应用程序编程接口,它使客户机上运行的程序可以调用远程服务器上的对象。由于RMI API只适用于Java程序,所以,我们一般称为Java RMI。
通过调用RMI的API,对象服务器通过目录服务导出和注册远程对象,这些对象提供一些可以被客户程序调用的远程方法。从语法上来看,RMI通过远程接口声明远程对象,该接口是Java接口的扩展。远程接口由对象服务器实现。对象客户使用与本地方法调用类似的语法访问远程对象,并调用远程对象的方法。
桩(stub)是远程对象的一种代理结构,使得远程对象可以像本地对象那样被访问。桩提供了远程对象的所有能被调用的远程方法,调用者可以通过调用本地桩(远程对象代理)所提供的方法来实现远程对象的方法调用。在RMI中,桩声明了同远程对象所实现的接口相同的方法集合。
当调用方调用桩内的方法时,会以如下方式进行处理:
1.初始化一个与远程JVM(包含了远程对象)的连接
2.向远程JVM传输封装后的参数(调用方法名,参数等)
3.等待远程JVM上的方法调用结果
4.将返回结果或异常信息解包