时间:2024-11-20 08:01:11
http和rpc的区别
HTTP和RPC的主要区别如下:
1. 传输协议:RPC可以基于TCP协议或HTTP协议,而HTTP基于HTTP协议。
2. 传输效率:RPC使用自定义的TCP协议或HTTP2协议,可以减少请求报文体积,提高传输效率。HTTP基于HTTP1.1的协议,请求中可能包含很多无用的内容,但如果基于HTTP2.0,可以通过简单封装作为RPC使用。
3. 性能消耗:RPC可以基于thrift实现高效的二进制传输,而HTTP大部分是通过JSON来实现的,字节大小和序列化耗时都比thrift要更消耗性能。
4. 负载均衡:RPC基本都自带了负载均衡策略,而HTTP需要配置Nginx或HAProxy来实现。
5. 服务治理:RPC能做到自动通知,不影响上游,而HTTP需要事先通知,修改Nginx/HAProxy配置。
总结:RPC主要用于公司内部的服务调用,性能消耗低,传输效率高,服务治理方便。HTTP主要用于对外的异构环境,浏览器接口调用,APP接口调用,第三方接口调用等。
快测评广州东远堂信息科技有限公司版权所有 量子科技网提供支持 粤ICP备15011623号