1.19
RMI 协议
基于RMI的一次完整的远程通信过程的原理:
1、客户端发起请求,请求转交至RMI客户端的stub类;
2、stub类将请求的接口、方法、参数等信息进行序列化;
3、基于socket将序列化后的流传输至服务器端;
4、服务器端接收到流后转发至相应的skelton类;
5、skelton类将请求的信息反序列化后调用实际的处理类;
6、处理类处理完毕后将结果返回给skelton类;
7、Skelton类将结果序列化,通过socket将流传送给客户端的stub;
8、stub在接收到流后反序列化,将反序列化后的Java Object返回给调用者。
学习笔记:
1.同步/异步
此处的同步不是指线程的运行时的同步。异步是指一个程序运行时,程序中的某些方法、数据处理等等不需要马上得到结果,或者说在接下来的程序运行时,不需要马上用到。 比如:在程序运行时,当某个方法执行时改变了某个参数,而我们在接下来的运行的一段时间内,不需要用到这个参数,而在一定时间后,程序再次需要这个参数。那么这个参数就是异步参数。 同理,异步方法。
2.有关内网机器与外网机器连接时须注意的事
一般一个以太网都会有一个与外界交互的机器,而所有的数据都是通过这台机器交换的,所以当外界有某台机器想与内网的某台机器建立连接时,内网机器必须请求交互机器打开一个连接通道(端口)以便外网的机器能通过这个通道和内网机器建立连接。(有关网络安全)
3.同构系统:比如两个用同一种语言编写的平台、软件等等。
此处需注意的是:可能不同的系统对于字节的存取、发送按不同的格式:(高位在前、低位在前)
分享到:
相关推荐
1. **远程接口(Remote Interface)**:这是定义远程方法的接口,需要继承java.rmi.Remote接口,并声明抛出java.rmi.RemoteException的异常。 2. **远程对象(Remote Object)**:实现了远程接口的类,这个类的对象...
这些方法通常抛出`java.rmi.RemoteException`,因为网络通信中可能出现的各种问题。 2. **实现远程对象**:创建一个实现远程接口的类,实现接口中声明的方法。这些方法将被序列化并通过网络传输。 3. **注册远程...
2. **实现远程接口**:然后,创建一个实现远程接口的类,该类通常需要继承自`java.rmi.Remote`接口,并且抛出`java.rmi.RemoteException`。在这个实现类中,你需要实现远程接口中的所有方法。 3. **创建并注册远程...
做为java分布式计算的基础框架的RMI体系,是javaEE结构的基础技术. 本课件全面讲解了RMI的一般实现,特殊问题解决及与sping的组合应用. ... 7.类似RMI的相关开源技术实现 -------具体请下载附件或登陆www.NetJava.cn
6. **部署和运行**:使用RMI时,需要将远程对象导出(`java.rmi.Naming.rebind()`),然后客户端可以通过`java.rmi.Naming.lookup()`查找并调用远程对象。在实际应用中,还需要配置JVM的RMI端口和其他网络参数。 在...
1. Unpack RMI.rar and put the package "features" and "plugins" under the package "net.genady.rmi_2.0.2.1" to <%eclipse%> directory; 2. Copy rmi.jar and lic.jar under the package "crack" to ...
本压缩包"rmi.rar"包含了基本的RMI实现示例,帮助我们理解如何在Java中运用RMI。 1. **RMI概念** RMI是一种Java对象间的通信机制,它允许对象在本地或网络上的另一台计算机上执行方法。这种机制的核心是接口,...
"java-rmi.zip_RMI java_rmi"这个文件很可能是包含了一些关于RMI实现的示例代码或库文件。RMI在分布式计算环境中非常有用,它使得开发者可以构建分布式应用程序,这些程序可以跨越网络调用方法,就像它们在同一台...
3. **导出远程对象**:使用`java.rmi.Naming.bind()`方法将远程对象注册到RMI注册表。 4. **创建存根和Skeleton**:对于RMI-IIOP,需要使用`rmic -iiop`命令生成IIOP兼容的存根和Skeleton。 5. **客户端调用**:...
接口必须继承自`java.rmi.Remote`,并且它的方法必须抛出`java.rmi.RemoteException`。 2. **远程对象实现**:服务端需要实现上述接口,并创建其实例。这个实例就是远程对象,它负责处理客户端的调用请求。 3. **...
分布式实验报告 RMI.docx 本实验报告主要介绍了 Java RMI(Remote Method Invocation,远程方法调用)的基本概念和实现步骤。RMI 是一种分布式对象通讯机制,允许运行在一个 Java 虚拟机的对象调用运行在另一个 ...
【标题】RMI.rar_rmi 深入解析:远程方法调用(Remote Method Invocation,RMI) 在Java编程环境中,RMI是一项重要的技术,它允许一个Java对象调用另一个在网络上的Java对象的方法,实现分布式计算。这个压缩包中的...
远程对象需要通过`java.rmi.Remote`接口进行标记,并且其构造函数通常需要一个`java.rmi.server.UnicastRemoteObject`的实例作为参数,以便于实现对象的序列化和反序列化。 3. **注册远程对象**:远程对象需要在RMI...
3. **通信协议:**聊天室可能采用自定义的简单文本协议,例如,每条消息由发送者ID、时间戳和消息内容组成,以特定字符或字符串分隔。 **RMI聊天室实现步骤:** 1. **定义远程接口:**创建描述远程方法的接口,使用...
这些方法必须抛出`java.rmi.RemoteException`,因为网络通信可能会出现异常。 2. **实现远程接口**:创建一个实现了远程接口的类,并且通常会继承`java.rmi.server.UnicastRemoteObject`,以便可以发布到RMI注册表...