美文网首页
私人定制和模板货(RPC和Http的区别)

私人定制和模板货(RPC和Http的区别)

作者: 柠檬小猪 | 来源:发表于2021-12-30 22:53 被阅读0次

先报答案:RPC框架中TCP内容=我们自定义的规则;HTTP就是通用规则。(个人理解)

初期理解RPC就是个封装好的远程调用框架,Http就是没封装好的。所以RPC是个封装好的Http?

什么是RPC

RPC全称为remote procedure call,即远程过程调用。借助RPC可以做到像本地调用一样调用远程服务,是一种进程间的通信方式。

四个核心的组件:客户端,客户端存根,服务器,服务器存根

客户端(Client),服务的调用方。

客户端存根(Client Stub),存放服务端的地址消息,再将客户端的请求参数打包成网络消息,然后通过网络远程发送给服务方。

服务端(Server),真正的服务提供者。

服务端存根(Server Stub),接收客户端发送过来的消息,将消息解包,并调用本地的方法。

Http协议

HTTP协议即超文本传送协议(Hypertext Transfer Protocol ),是Web联网的基础,也是手机联网常用的协议之一,HTTP协议是建立在TCP协议之上的一种应用。

      HTTP连接最显著的特点是客户端发送的每次请求都需要服务器回送响应,在请求结束后,会主动释放连接。从建立连接到关闭连接的过程称为“一次连接”。

就是前端常用的,调用接口然后拿到返回值。

TCP又是什么?

TCP传输协议

顾名思义TCP是用来传数据的。

他们是一层套一层的。

IP头+IP内容

IP内容=TCP头+TCP内容

TCP内容=Http头+Http内容(这里面就是熟悉的request 和response)

IP头就是IP地址了,要发到哪去。

TCP头是用来维持数据包的顺序,顺序乱了就没意义了。

结论

现在比较流行的RPC框架,都会采用TCP作为底层传输协议。

所以RPC框架中TCP内容=我们自定义的规则;HTTP就是通用规则。

区别就很好理解了,自己定制的规则肯定比通用的更快更安全,但是有局限性。

但是第一代springcloud Netflflix(就是做视频那个耐飞)中服务调⽤的feign又是通过http实现的,

而第二代 Spring Cloud(Spring Cloud Alibaba)又用上了dubbo是RPC,所以他们之间的差别是不是比我想象的要小很多?

相关文章

  • 私人定制和模板货(RPC和Http的区别)

    先报答案:RPC框架中TCP内容=我们自定义的规则;HTTP就是通用规则。(个人理解) 初期理解RPC就是个封装好...

  • rpc和http的区别

    作者:知乎用户 链接:https://www.zhihu.com/question/41609070/answer...

  • RPC和HTTP的区别

    RPC调用和HTTP调用 1. 协议 RPC是通常基于TCP/IP协议 HTTP基于HTTP协议 2. 效率 RP...

  • RPC和HTTP的区别

    20210907由于找工作,中断了数天,后面继续坚持 RPC=Remote Process Call=远程过程调用...

  • REST 架构风格

    [ ] http和rpc的区别 [ ] Transfer 和 transport 的区别 [ ] 什么是 REST...

  • HTTP 的本质?HTTP 和 RPC 的区别?

    身为 Java Web 开发我发现很多人一些 Web 基础问题都答不上来。 上周我面试了一个三年经验的小伙子,一...

  • RPC 调用和 HTTP 调用的区别

    0. OSI网络七层模型 在说RPC和HTTP的区别之前,我觉的有必要了解一下OSI的七层网络结构模型。 层级名称...

  • RPC 调用和 HTTP 调用的区别

    很长时间以来都没有怎么好好搞清楚RPC(即Remote Procedure Call,远程过程调用)和HTTP调用...

  • rpc和HTTP

    参考文章:https://www.cnblogs.com/helloworldmybokeyuan/p/11626...

  • 2019-08-16

    网络协议:tcp/udp, http, https 等 1.HTTP和RPC的区别 2.HTTP的常见方法,pos...

网友评论

      本文标题:私人定制和模板货(RPC和Http的区别)

      本文链接:https://www.haomeiwen.com/subject/gupiqrtx.html