引言
在上一家公司工作的时候,涉及过RPC的开发,但仅仅是协作方制定好接口文档,我按照对应的格式去返回数据,对于RPC的概念、功能、实现以及各种版本框架的差异几乎没有了解。随着对进程间通信探究的不断深入,对深入了解RPC的渴望也愈加浓烈。本文开始,我将对大名鼎鼎的BPRC展开一系列的学习。
概览
首先,我将简要的描述一下我对RPC的理解,RPC,全称Remote Procedure Call,中文是“远程过程调用”,想要了解一个陌生的东西,可以先了解一下它的由来——即在什么背景下产生了这个东西,否则就会有类似既然有 HTTP 请求,为什么还要用 RPC 调用?这种疑问。针对这个问题,个人推荐如下回答。
作者:周迪超
链接:https://www.zhihu.com/question/41609070/answer/1040163258
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
下面一堆答案给题主科普各种RPC和HTTP的原理,什么RPC也可以包含HTTP协议,其实并没有解答题主的困惑。题主的问题准确来讲,是说:既然有HTTP请求可以解决系统间调用的问题了,为什么还会有人使用RPC调用?题主明显是只看到现状,而忽略了两种远程请求调用的历史进程。RPC在1984年就被人用来做分布式系统的通信