销售课程视频免费,seo优化是什么,专业装饰企业展厅设计公司,江苏网站建设公司哪家好快速弄懂RPC 常见的远程通信方式远程调用RPC协议RPC的运用场景和优势 常见的远程通信方式
基于REST架构的HTTP协议以及基于RPC协议的RPC框架。
远程调用
是指跨进程的功能调用。
跨进程可以理解为一个计算机节点的多个进程或者多个计算机节点的多个进程。
RPC协议
远程过… 快速弄懂RPC 常见的远程通信方式远程调用RPC协议RPC的运用场景和优势 常见的远程通信方式
基于REST架构的HTTP协议以及基于RPC协议的RPC框架。
远程调用
是指跨进程的功能调用。
跨进程可以理解为一个计算机节点的多个进程或者多个计算机节点的多个进程。
RPC协议
远程过程调用
他是一种通过网络从远程计算机程序上请求服务而不需要去了解底层网络技术的一种协议。凡是该协议的框架我们都可以称为RPC框架。
通俗的理解就是A计算机提供一个服务B计算机可以通过调用本地服务一样去调用A计算机提供的一个服务。这就是RPC协议的一个功能。
要实现RPC需要通过网络进行数据传输并且对调用的过程进行封装。
现在比较流行的RPC框架都会采用TCP协议作为底层传输协议。当然其他协议也是可以的比如UDP。
RPC协议强调的是过程调用调用的过程对用户而言是透明的用户不需要关心调用的细节。可以像调用本地服务一样去调用远程服务。 一个完整的RPC协议包含了四个核心组件分别是Client、Server、Client Stub以及Server Stub。
第一个客户端Client表示服务的调用方第二个服务端Server是真正服务提供者第三个是客户端存根叫Client Stub存放服务端的地址信息再将客户端的请求参数打包成网络消息然后通过网络远程发送给服务方。第四个是服务端的存根叫Server Stub接收客户端发送过来的消息将消息进行反序列化并调用本地方法。
目前比较流行的开源RPC框架有Google的gRPC, facebook的Thrift阿里巴巴的Dubbo。
RPC的运用场景和优势
在开发电商系统的时候随着业务越来越复杂走分布式架构这个方向是绝大部分的互联网企业必然的一个选择。
分布式架构落地的里程碑应该是阿里的去IOE运动的成功让互联网企业看到如何利用更少的软硬件成本来支撑海量的用户。分布式架构的核心就是利用多个普通的计算机节点组成一个庞大的复杂计算网络提供一个高性能以及高并发的能力支撑。
在分布式架构中原本单体应用被拆分成多个独立部署的服务分布在计算机网络上。这些服务必然需要网络进行数据的通信和交付。而RPC框架就是解决在分布式架构中的各个业务服务彼此的网络通信的一个方案。
一般来说RPC服务主要是针对大型的企业也就是说当我们的业务复杂度以及用户量都比较高的时候需要对服务进行解耦从而达到部署性强、部署灵活的一个目的。
一般情况下市面上的开源RPC框架除了提供基础的远程通信功能以外还会在性能的消耗上、传输效率上、服务治理等方面做出很多的一些优化和设计。比如说阿里开源的RPC框架Dubbo就提供了非常丰富的服务治理的一些功能。
参考资料【Java面试】白嫖福利5分钟带你快速弄懂RPC