RPC框架是啥?Java自带RPC实现,RMI框架入门是啥?
- 内容介绍
- 文章标签
- 相关推荐
本文共计1126个文字,预计阅读时间需要5分钟。
本博客猫叔的博客,转载请注明出处。首先,RMI(Remote Method Invocation,远程方法调用)是Java中用于实现远程过程调用的框架。它允许一个Java虚拟机上的对象调用另一个Java虚拟机上的对象的方法。下面是关于RMI和RPC框架的一些内容:
- 学习系列:RMI(Remote Method Invocation)是Java自带的一种RPC(Remote Procedure Call,远程过程调用)实现。- RMI框架入门:首先了解RMI的基本概念和原理。- 什么是RPC框架?RPC框架是一种允许程序在不同地址空间(甚至不同机器上)调用远程过程的技术。- Java自带RPC实现:Java提供了RMI框架来实现RPC功能。- RMI入门:从基础开始学习RMI,包括如何创建远程对象和调用远程方法。
本博客猫叔的博客,转载请申明出处首先RMI(RemoteMethodInvocation)是Java本博客猫叔的博客,转载请申明出处
学习系列
- RPC框架是啥?
Java自带RPC实现,RMI框架入门
首先RMI(Remote Method Invocation)是 Java 特有的一种RPC实现,它能够使部署在不同主机上的Java对象进行通信与方法调用,它是一种基于Java的远程方法调用技术。
让我们优先来实现一个RMI的RPC案例吧。
项目源码地址: RPC_Demo ,记得是项目里面的 comgithubrmi
- 1、首先我们需要为服务端创建一个接口方法,而且这个接口最好继承 Remote
- 2、对于接口实现类,RMI接口方法定义必须显式声明抛出RemoteException异常,服务端方法实现必须继承UnicastRemoteObject类,该类定义了服务调用与服务提供方对象实现,并建立一对一的连接。
- 3、这里我们还需要一个针对服务端的配置类,因为RMI的通信端口是随机产生的,因此有可能会被防火墙拦截。为了防止被防火墙拦截,需要强制制定RMI的通信端口,一般通过自定义一个RMISocketFactory类来实现。
- 4、好了,这时你可以写出服务端的启动代码了。
- 5、客户端的启动就相对比较简单,我们仅需要进入服务,并调用对应的远程方法即可。
最后可以看看效果。
关于RMI的一些关键点
- 支持真正的面向对象的多态性,这是RMI的优势。
- 完美支持Java语言所独有的特性,不支持其他语言。
- 使用了Java原生序列化,所有序列化对象必须实现java.io.Serializablie接口。
- 底层通信是BIO(同步阻塞I/O)实现的Socket
- 由于BIO与原生序列化存在的性能问题,导致RMI的性能较差,如果你的项目性能要求较高,可能并不合适哦!
公众号:Java猫说
学习交流群:728698035
现架构设计(码农)兼创业技术顾问,不羁平庸,热爱开源,杂谈程序人生与不定期干货。
-
Previous
RPC框架是啥?
以上所述就是自由互联小编给大家介绍的《RPC框架是啥之Java自带RPC实现,RMI框架入门》,希望对大家有所帮助,如果大家有任何疑问请给我留言,自由互联小编会及时回复大家的。在此也非常感谢大家对 我们 的支持!
本文共计1126个文字,预计阅读时间需要5分钟。
本博客猫叔的博客,转载请注明出处。首先,RMI(Remote Method Invocation,远程方法调用)是Java中用于实现远程过程调用的框架。它允许一个Java虚拟机上的对象调用另一个Java虚拟机上的对象的方法。下面是关于RMI和RPC框架的一些内容:
- 学习系列:RMI(Remote Method Invocation)是Java自带的一种RPC(Remote Procedure Call,远程过程调用)实现。- RMI框架入门:首先了解RMI的基本概念和原理。- 什么是RPC框架?RPC框架是一种允许程序在不同地址空间(甚至不同机器上)调用远程过程的技术。- Java自带RPC实现:Java提供了RMI框架来实现RPC功能。- RMI入门:从基础开始学习RMI,包括如何创建远程对象和调用远程方法。
本博客猫叔的博客,转载请申明出处首先RMI(RemoteMethodInvocation)是Java本博客猫叔的博客,转载请申明出处
学习系列
- RPC框架是啥?
Java自带RPC实现,RMI框架入门
首先RMI(Remote Method Invocation)是 Java 特有的一种RPC实现,它能够使部署在不同主机上的Java对象进行通信与方法调用,它是一种基于Java的远程方法调用技术。
让我们优先来实现一个RMI的RPC案例吧。
项目源码地址: RPC_Demo ,记得是项目里面的 comgithubrmi
- 1、首先我们需要为服务端创建一个接口方法,而且这个接口最好继承 Remote
- 2、对于接口实现类,RMI接口方法定义必须显式声明抛出RemoteException异常,服务端方法实现必须继承UnicastRemoteObject类,该类定义了服务调用与服务提供方对象实现,并建立一对一的连接。
- 3、这里我们还需要一个针对服务端的配置类,因为RMI的通信端口是随机产生的,因此有可能会被防火墙拦截。为了防止被防火墙拦截,需要强制制定RMI的通信端口,一般通过自定义一个RMISocketFactory类来实现。
- 4、好了,这时你可以写出服务端的启动代码了。
- 5、客户端的启动就相对比较简单,我们仅需要进入服务,并调用对应的远程方法即可。
最后可以看看效果。
关于RMI的一些关键点
- 支持真正的面向对象的多态性,这是RMI的优势。
- 完美支持Java语言所独有的特性,不支持其他语言。
- 使用了Java原生序列化,所有序列化对象必须实现java.io.Serializablie接口。
- 底层通信是BIO(同步阻塞I/O)实现的Socket
- 由于BIO与原生序列化存在的性能问题,导致RMI的性能较差,如果你的项目性能要求较高,可能并不合适哦!
公众号:Java猫说
学习交流群:728698035
现架构设计(码农)兼创业技术顾问,不羁平庸,热爱开源,杂谈程序人生与不定期干货。
-
Previous
RPC框架是啥?
以上所述就是自由互联小编给大家介绍的《RPC框架是啥之Java自带RPC实现,RMI框架入门》,希望对大家有所帮助,如果大家有任何疑问请给我留言,自由互联小编会及时回复大家的。在此也非常感谢大家对 我们 的支持!

