http与rpc

什么是RPC协议?RPC协议与HTTP协议的区别6,790次阅读
什么是RPC协议?

RPC是一种远程过程调用的协议,使用这种协议向另一台计算机上的程序请求服务,不需要了解底层网络技术的协议。

在 RPC 中,发出请求的程序是客户程序,而提供服务的程序是服务器。

HTTP是一种超文本传输协议。是WWW浏览器和WWW服务器之间的应用层通讯协议。

RPC协议与HTTP协议的区别

1、RPC是一种API,HTTP是一种无状态的网络协议。RPC可以基于HTTP协议实现,也可以直接在TCP协议上实现。

2、RPC主要是用在大型网站里面,因为大型网站里面系统繁多,业务线复杂,而且效率优势非常重要的一块,这个时候RPC的优势就比较明显了。

HTTP主要是用在中小型企业里面,业务线没那么繁多的情况下。

3、HTTP开发方便简单、直接。开发一个完善的RPC框架难度比较大。

4、HTTP发明的初衷是为了传送超文本的资源,协议设计的比较复杂,参数传递的方式效率也不高。开源的RPC框架针对远程调用协议上的效率会比HTTP快很多。

5、HTTP需要事先通知,修改Nginx/HAProxy配置。RPC能做到自动通知,不影响上游。

6、HTTP大部分是通过Json来实现的,字节大小和序列化耗时都比Thrift要更消耗性能。RPC,可以基于Thrift实现高效的二进制传输。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 什么是RPC 从网络协议来说,Http协议与Rpc同属于应用层, 他们的底层都是tcp协议。 从概念上来说,RPC...
    薛云龙阅读 14,173评论 0 2
  • 说起接口测试,常规的是对HTTP&RPC接口接入自动化。 近期面试,谈起接口测试的问题,被问到http与rpc的区...
    dbsifaghrnbv阅读 916评论 0 0
  • 转自http://mp.weixin.qq.com/s?__biz=MzAxMTEyOTQ5OQ==&mid=26...
    文刂德光军阅读 4,785评论 0 11
  • 今天分布式应用、云计算、微服务大行其道,作为其技术基石之一的 RPC 你了解多少?一篇 RPC 的技术总结文章,数...
    零一间阅读 5,872评论 1 46
  • 今天分布式应用、云计算、微服务大行其道,作为其技术基石之一的 RPC 你了解多少?一篇 RPC 的技术总结文章,数...
    mindwind阅读 5,858评论 1 38