RPC是什么?
RPC (Remote Procedure Call)是远程过程调用,他能够通过网络请求远程计算机上程序的服务。
简单来说就是我请求别人的接口使用。(跟HTTP协议有点像)
- RPC使用的TCP/UDP协议,HTTP服务是基于HTTP协议的,HTTP在传输层TCP之上 ,所以效率一般。
- HTTP,大部分通过json来实现,字节大小和序列化耗时都比thrift更加消耗性能,RPC基本自带负载均衡策略且在服务治理方面做到自动通知,RPC主要用于公司内部服务调用,HTTP主要用于外部异构环境,APP,浏览器调用。
- HTTP是短链接,RPC是长链接,不需想http每次连接需要进行三次握手,减少了网络开销。