`
tang&qiang
  • 浏览: 25908 次
  • 性别: Icon_minigender_1
  • 来自: 湖南
社区版块
存档分类
最新评论

请您先登录,才能继续操作

7. 初识 RMI 通信协议

阅读更多

 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.同构系统:比如两个用同一种语言编写的平台、软件等等。

   此处需注意的是:可能不同的系统对于字节的存取、发送按不同的格式:(高位在前、低位在前)

 

 

 

 

分享到:
评论

相关推荐

    net.genady.rmi_2.0.7_Eclipse33

    1. **远程接口(Remote Interface)**:这是定义远程方法的接口,需要继承java.rmi.Remote接口,并声明抛出java.rmi.RemoteException的异常。 2. **远程对象(Remote Object)**:实现了远程接口的类,这个类的对象...

    RMI.rar_Java RMI_java.rmi_java.rmi.Remot_remote

    这些方法通常抛出`java.rmi.RemoteException`,因为网络通信中可能出现的各种问题。 2. **实现远程对象**:创建一个实现远程接口的类,实现接口中声明的方法。这些方法将被序列化并通过网络传输。 3. **注册远程...

    java_rmi.rar_RMI java_java.rmi

    2. **实现远程接口**:然后,创建一个实现远程接口的类,该类通常需要继承自`java.rmi.Remote`接口,并且抛出`java.rmi.RemoteException`。在这个实现类中,你需要实现远程接口中的所有方法。 3. **创建并注册远程...

    长沙蓝杰实训java课件之 RMI技术解析(www.NetJava.cn)

    做为java分布式计算的基础框架的RMI体系,是javaEE结构的基础技术. 本课件全面讲解了RMI的一般实现,特殊问题解决及与sping的组合应用. ... 7.类似RMI的相关开源技术实现 -------具体请下载附件或登陆www.NetJava.cn

    rmi.rar_Java RMI_RMI java_RMI policy.all_rmi

    6. **部署和运行**:使用RMI时,需要将远程对象导出(`java.rmi.Naming.rebind()`),然后客户端可以通过`java.rmi.Naming.lookup()`查找并调用远程对象。在实际应用中,还需要配置JVM的RMI端口和其他网络参数。 在...

    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_basic rmi

    本压缩包"rmi.rar"包含了基本的RMI实现示例,帮助我们理解如何在Java中运用RMI。 1. **RMI概念** RMI是一种Java对象间的通信机制,它允许对象在本地或网络上的另一台计算机上执行方法。这种机制的核心是接口,...

    java-rmi.zip_RMI java_rmi

    "java-rmi.zip_RMI java_rmi"这个文件很可能是包含了一些关于RMI实现的示例代码或库文件。RMI在分布式计算环境中非常有用,它使得开发者可以构建分布式应用程序,这些程序可以跨越网络调用方法,就像它们在同一台...

    J2SE.RMI.IIOP.application.design.code.rar_code rmi_rmi iiop

    3. **导出远程对象**:使用`java.rmi.Naming.bind()`方法将远程对象注册到RMI注册表。 4. **创建存根和Skeleton**:对于RMI-IIOP,需要使用`rmic -iiop`命令生成IIOP兼容的存根和Skeleton。 5. **客户端调用**:...

    rmi.rar_rmi

    接口必须继承自`java.rmi.Remote`,并且它的方法必须抛出`java.rmi.RemoteException`。 2. **远程对象实现**:服务端需要实现上述接口,并创建其实例。这个实例就是远程对象,它负责处理客户端的调用请求。 3. **...

    分布式实验报告RMI.docx

    分布式实验报告 RMI.docx 本实验报告主要介绍了 Java RMI(Remote Method Invocation,远程方法调用)的基本概念和实现步骤。RMI 是一种分布式对象通讯机制,允许运行在一个 Java 虚拟机的对象调用运行在另一个 ...

    RMI.rar_rmi

    【标题】RMI.rar_rmi 深入解析:远程方法调用(Remote Method Invocation,RMI) 在Java编程环境中,RMI是一项重要的技术,它允许一个Java对象调用另一个在网络上的Java对象的方法,实现分布式计算。这个压缩包中的...

    RMI协议的应用与研究

    远程对象需要通过`java.rmi.Remote`接口进行标记,并且其构造函数通常需要一个`java.rmi.server.UnicastRemoteObject`的实例作为参数,以便于实现对象的序列化和反序列化。 3. **注册远程对象**:远程对象需要在RMI...

    liaotianshi.rar_RMI聊天室_java 网络_rmi _rmi 聊天_网络聊天室

    3. **通信协议:**聊天室可能采用自定义的简单文本协议,例如,每条消息由发送者ID、时间戳和消息内容组成,以特定字符或字符串分隔。 **RMI聊天室实现步骤:** 1. **定义远程接口:**创建描述远程方法的接口,使用...

    rmi.rar_RMI java

    这些方法必须抛出`java.rmi.RemoteException`,因为网络通信可能会出现异常。 2. **实现远程接口**:创建一个实现了远程接口的类,并且通常会继承`java.rmi.server.UnicastRemoteObject`,以便可以发布到RMI注册表...

Global site tag (gtag.js) - Google Analytics