rmi是什么?什么是 rmi

:暂无数据 2026-09-20 02:10:02 :0

rmi是什么?什么是 rmi

今天给各位分享rmi是什么的知识,其中也会对rmi是什么进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

本文目录

rmi是什么

RMI(Remote Method Invocation,远程方法调用)是用Java在JDK1.1中实现的,它大大增强了Java开发分布式应用的能力。Java作为一种风靡一时的网络开发语言,其巨大的威力就体现在它强大的开发分布式网络应用的能力上,而RMI就是开发百分之百纯Java的网络分布式应用系统的核心解决方案之一。其实它可以被看作是RPC的Java版本。但是传统RPC并不能很好地应用于分布式对象系统。而Java RMI 则支持存储于不同地址空间的程序级对象之间彼此进行通信,实现远程对象之间的无缝远程调用。
网上有很多实例,可以自己去了解一下。还是很重要的。

什么是 rmi

什么是RMI
分布式计算系统要求运行在不同地址空间不同主机上的对象互相调用。各种分布式系统都有自己的调用协议,如CORBA的IIOP(Internet InterORB Protocol), MTS的DCOM。那么EJB组件呢?在Java里提供了完整的sockets通讯接口,但sockets要求客户端和服务端必须进行应用级协议的编码交换数据,采用sockets是非常麻烦的。
一个代替Sockets的协议是RPC(Remote Procedure Call), 它抽象出了通讯接口用于过程调用,使得编程者调用一个远程过程和调用本地过程同样方便。RPC 系统采用XDR来编码远程调用的参数和返回值。

但RPC 并不支持对象,而EJB构造的是完全面向对象的分布式系统,所以,面向对象的远程调用RMI(Remote Method Invocation)成为必然选择。采用RMI,调用远程对象和调用本地对象同样方便。RMI采用JRMP(Java Remote Method Protocol)通讯协议,是构建在TCP/IP协议上的一种远程调用方法。

RMI调用机制
RMI 采用stubs 和 skeletons 来进行远程对象(remote object)的通讯。stub 充当远程对象的客户端代理,有着和远程对象相同的远程接口,远程对象的调用实际是通过调用该对象的客户端代理对象stub来完成的。

stub

每个远程对象都包含一个代理对象stub,当运行在本地Java虚拟机上的程序调用运行在远程Java虚拟机上的对象方法时,它首先在本地创建该对象的代理对象stub, 然后调用代理对象上匹配的方法,代理对象会作如下工作:

与远程对象所在的虚拟机建立连接
打包(marshal)参数并发送到远程虚拟机
等待执行结果
解包(unmarshal)返回值或返回的错误
返回调用结果给调用程序
stub 对象负责调用参数和返回值的流化(serialization)、打包解包,以及网络层的通讯过程。
skeleton

每一个远程对象同时也包含一个skeleton对象,skeleton运行在远程对象所在的虚拟机上,接受来自stub对象的调用。当skeleton接收到来自stub对象的调用请求后,skeleton会作如下工作:

解包stub传来的参数
调用远程对象匹配的方法
打包返回值或错误发送给stub对象
远程对象的stub和skeleton对象都是由rmic编译工具产生的。
RMI-IIOP
RMI能够很好解决Java语言中分布式对象的调用问题,但RMI不是一个标准的调用协议,所以RMI不能调用非Java语言编写的对象。

IIOP(Internet Inter-ORB Protocol)是CORBA的通讯协议。CORBA是由OMG(Object Management Group)组织定义的一种分布式组件标准,通过和各种编程语言相匹配的IDL(Interface Definition Language),CORBA可以作到和语言无关,也就是说,用不同编程语言编写的CORBA对象可以互相调用。

JavaIDL定义了Java语言到CORBA之间的匹配,通过JavaIDL,用Java语言编写的应用程序可以和任何CORBA对象通讯。

RMI-IIOP结合了RMI的易用性和CORBA/IIOP的语言无关性,通过RMI-IIOP,RMI对象可以采用IIOP协议和CORBA对象通讯。RMI-IIOP对RMI的调用参数作了一些很轻微的限制,在调用CORBA对象时,必须遵循这些限制。JDK1.3已经提供对RMI-IIOP的支持。

Apusic Application Server对RMI-IIOP的支持
Apusic Application Server目前采用RMI,对RMI-IIOP的支持正在开发中,预计不久即会推出完全支持RMI-IIOP的新版本。

permission denied是什么意思

没有权限;拒绝访问

permission 读法 英 [pəˈmɪʃn]  美 [pərˈmɪʃn] 

n. 允许,许可;许可证,书面许可

词汇搭配:

building permission 营建许可证 ; 建筑开工许可证

written permission 书面许可证 ; 书面同意 ; 书面许可 ; 签单

writing permission 书面许可 ; 书里允许 ; 书面准许 ; 书面

示例:

They cannot leave the country without permission.

没有许可他们不得离开这个国家。


词语用法:

permission指“许可,允许”,并不着重说明“谁”许可或从上下文中可以看出由谁许可时,其前不用物主代词,也不用定冠词the;如强调“谁”许可时可用物主代词,但不用定冠词the。

permission用在by后面时有时要用the,一般用于by the...permission of sb结构。

词义辨析:

permission, permit这两个词的共同意思是“许可”。其区别是:

permit为官方签发的“通行证,许可证”; permission通常指口头的“许可”。例如:

You have my permission to leave.我准许你离开。

关于rmi和rmi是什么的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。

rmi是什么?什么是 rmi

本文编辑:admin
: rmi

本文相关文章:


rmi的角色rmi的运行原理在rmi编程应用中要引入哪些个包?permits什么意思

rmi的角色rmi的运行原理在rmi编程应用中要引入哪些个包?permits什么意思

本篇文章给大家谈谈rmi,以及rmi的角色rmi的运行原理在rmi编程应用中要引入哪些个包对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。

2026年6月22日 08:40

更多文章:


什么是操作系统的内核(操作系统内核是啥)

什么是操作系统的内核(操作系统内核是啥)

今天给各位分享操作系统内核是啥的知识,其中也会对操作系统内核是啥进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

2026年10月12日 02:20

oxides(nitrogen+oxides是什么意思)

oxides(nitrogen+oxides是什么意思)

大家好,今天小编来为大家解答以下的问题,关于oxides,nitrogen+oxides是什么意思这个很多人还不知道,现在让我们一起来看看吧!

2026年10月12日 02:10

pondered翻译(求高手帮忙翻译成英语)

pondered翻译(求高手帮忙翻译成英语)

其实pondered翻译的问题并不复杂,但是又很多的朋友都不太了解求高手帮忙翻译成英语,因此呢,今天小编就来为大家分享pondered翻译的一些知识,希望可以帮助到大家,下面我们一起来看看这个问题的分析吧!

2026年10月12日 01:50

编写js什么软件好用(javascript用什么开发工具)

编写js什么软件好用(javascript用什么开发工具)

其实编写js什么软件好用的问题并不复杂,但是又很多的朋友都不太了解javascript用什么开发工具,因此呢,今天小编就来为大家分享编写js什么软件好用的一些知识,希望可以帮助到大家,下面我们一起来看看这个问题的分析吧!

2026年10月12日 01:30

zabbix官方文档(zabbix怎么监控上百台电脑)

zabbix官方文档(zabbix怎么监控上百台电脑)

本篇文章给大家谈谈zabbix官方文档,以及zabbix怎么监控上百台电脑对应的知识点,文章可能有点长,但是希望大家可以阅读完,增长自己的知识,最重要的是希望对各位有所帮助,可以解决了您的问题,不要忘了收藏本站喔。

2026年10月12日 01:10

Rick是什么意思?你被骗了rick是什么梗

Rick是什么意思?你被骗了rick是什么梗

大家好,关于rick很多朋友都还不太明白,不过没关系,因为今天小编就来为大家分享关于Rick是什么意思的知识点,相信应该可以解决大家的一些困惑和问题,如果碰巧可以解决您的问题,还望关注下本站哦,希望对各位有所帮助!

2026年10月12日 00:50

菜鸟工具html在线(菜鸟在线学习HTML5可靠吗)

菜鸟工具html在线(菜鸟在线学习HTML5可靠吗)

“菜鸟工具html在线”相关信息最新大全有哪些,这是大家都非常关心的,接下来就一起看看菜鸟工具html在线(菜鸟在线学习HTML5可靠吗)!

2026年10月12日 00:10

固态硬盘初始化磁盘?用过的硬盘怎么初始化

固态硬盘初始化磁盘?用过的硬盘怎么初始化

大家好,关于初始化磁盘很多朋友都还不太明白,不过没关系,因为今天小编就来为大家分享关于固态硬盘初始化磁盘的知识点,相信应该可以解决大家的一些困惑和问题,如果碰巧可以解决您的问题,还望关注下本站哦,希望对各位有所帮助!

2026年10月11日 23:40

consul(如何用Consul打造弹性可扩展的PaaS平台)

consul(如何用Consul打造弹性可扩展的PaaS平台)

今天给各位分享如何用Consul打造弹性可扩展的PaaS平台的知识,其中也会对如何用Consul打造弹性可扩展的PaaS平台进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

2026年10月11日 23:20

php购物车实现(商品放入购物车时减库存,购物车在20分钟后,清除所有商品,这个时候库存重新加上去,PHP怎么实现)

php购物车实现(商品放入购物车时减库存,购物车在20分钟后,清除所有商品,这个时候库存重新加上去,PHP怎么实现)

今天给各位分享商品放入购物车时减库存,购物车在20分钟后,清除所有商品,这个时候库存重新加上去,PHP怎么实现的知识,其中也会对商品放入购物车时减库存,购物车在20分钟后,清除所有商品,这个时候库存重新加上去,PHP怎么实现进行解释,如果能

2026年10月11日 23:00

最近更新

oxides(nitrogen+oxides是什么意思)
2026-10-12 02:10:04 浏览:0
热门文章

标签列表