首页 > 代码库 > RMI实现

RMI实现

 RMI工作原理  

来看下基于RMI的一次完整的远程通信过程的原理:

1、客户端发起请求,请求转交至RMI客户端的stub类; 
2、stub类将请求的接口、方法、参数等信息进行序列化; 
3、基于socket将序列化后的流传输至服务器端; 
4、服务器端接收到流后转发至相应的skelton类; 
5、skelton类将请求的信息反序列化后调用实际的处理类(服务实现类Impl); 
6、处理类处理完毕后将结果返回给skelton类; 
7、Skelton类将结果序列化,通过socket将流传送给客户端的stub; 
8、stub在接收到流后反序列化,将反序列化后的Java Object返回给调用者。



RMI的本质是在实现不同JVM之间的调用,实现方法是在两个JVM中各开一个stub和Skeleton,
二者通过socket实现参数和返回值的传递。
RMI实质上就是生成2个类stub,skeleton来进行参数和返回值的传递,采用值传递方式
 
 

RMI实现