什么是RPC?为什么需要RPC?
RPC全称RemoteProcedureCall——远程过程调用。在学校学习编程习编程时,我们可以在本地调用一个函数。但是在互联网公司,服务是一个分布式系统,部署在不同的服务器上。如何调用?
RPC简单来说,技术就是一种解决远程调用服务的技术,使调用者像调用本地服务一样方便透明。
1)客户端client发起服务调用请求。
2)clientstub它可以理解为一个代理,并将调用方法.按一定格式封装参数,通过服务提供的地址,启动网络请求。
3)信息通过网络传输到服务端。
4)serverstub接受来自socket的消息
5)serverstub解包消息.告诉服务器调用哪些服务,参数是什么
6)结果返回serverstub
7)severstub打包结果socket
8)socket通过网络传输消息
9)clientslub从socket拿到消息
10)clientstub解包消息将返回结果client。
一个RPC框架是封装步骤2到9。
为什么需要RPC
1.首先要明确一点:RPC可以用HTTP实现并使用协议HTTP是建立在TCP最广泛使用的RPC,然而,互联网公司经常使用自己的私人协议,如鹅厂JCE协议,为什么私有协议没有通用性?HTTP协议,RPC采用二进制字节码传输,更高效、更安全。
2.现在行业提倡“微服务“目前,服务间沟通有两种方式,RPC就是其中之一。RPC可以保证不同服务之间的相互调用。即使是跨语言跨平台也不是问题,这使得构建分布式系统更容易。
3.RPC服务降级的框架.流量控制功能,确保服务的高可用性。
时间:2022-12-15 22:45 来源:未知 转发量:次
声明:本站部分作品是由网友自主投稿和发布、编辑整理上传,对此类作品本站仅提供交流平台,转载的目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,不为其版权负责。如果您发现网站上有侵犯您的知识产权的作品,请与我们取得联系,我们会及时修改或删除。
相关文章:
相关推荐:
网友评论: