当前位置:
首页 > 最新政策 > rpc和http的区别是什么 各自的优缺点有哪些(赵剑)

知识点

rpc和http的区别是什么 各自的优缺点有哪些(赵剑)

Http是指从客户端到服务器的请求消息,rpc是远程过程调用协议,它们之间有什么区别?以下是边肖整理的相关内容,希望对大家有所帮助!

rpc和http的区别是什么

rpc和http的区别在于,http请求是通过使用具有标准语义的通用接口指向资源的,这些接口可以由中间组件和提供服务的源机器来解释。结果是一个应用程序支持
层的
转换和间接,并且独立于消息的来源,对于一个互联网规模、多组织、不可控可扩展性的信息系统非常有用。相比之下,rpc的机制是根据语言API(language
API)定义的,而不是根据基于网络的应用定义的。

HTTP和RPC的优缺点

主要阐述了HTTP和RPC的异同,让大家更容易根据自己的实际情况选择更合适的方案。

传输协议

RPC:可以基于TCP协议,也可以基于HTTP协议

HTTP:基于HTTP协议

传输效率

RPC:使用自定义的TCP协议可以使请求消息更小,或者使用HTTP2协议也可以减小消息大小,提高传输效率

HTTP:如果是基于HTTP1.1协议的话,请求中会包含很多无用的内容。如果它基于HTTP2.0,那么简单的封装可以用作一个RPC,然后标准的RPC框架更多的是关于服务治理

性能消耗

RPC:基于节约可以实现高效的二进制传输

HTTP:大部分都是通过json实现的,字节大小和序列化时间比节约更消耗性能

负载平衡

基本上,它有自己的负载平衡策略

HTTP:需要配置Nginx和HAProxy才能实现

服务治理

RPC:自动通知可以在不影响上游的情况下实现

HTTP:修改Nginx/HAProxy配置需要提前通知

摘要

RPC主要用于内部服务调用,性能消耗低,传输效率高,服务管理方便。HTTP主要用于异构环境,浏览器接口调用,APP接口调用,第三方接口调用等。