初识RPC

僤鯓⒐⒋嵵緔 提交于 2020-03-03 05:55:42

RPC:Remote Procedure Call Protocol(远程过程调用协议)

在分布式系统中,不同的应用或者服务部署在不同的服务器上,不同的服务器之间相互调用不在同一内存空间,也是不同进程之间的调用,为了解决此类问题,才有了RPC框架。那么RPC框架主要解决了哪些问题?往下看:

1、首先解决的是通讯的问题,客户端与服务端建立连接,可以是按需连接,也可以是长连接,建立连接后才能在这个连接中传输数据。

2、解决寻址问题,假如客户端要连接服务端,RPC框架必须知道服务端的IP及端口,当客户端需要连接的时候,RPC框架告诉客户端IP及端口。

3、客户端传参问题,当客户端与服务端建立连接后,客户端要调用服务端的方法,需要将参数编码并序列化传给服务端。

4、服务端接收到客户端传来的参数后,反序列化并解码参数,将数据处理完成后再编码并序列化传给客户端。

常用的RPC框架都有哪些呢?

1、RMI:java自带的远程方法调用

2、hessian:基于HTTP的远程方法调用

3、Dubbo:淘宝开源的基于TCP的RPC框架

 

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!