20210907
由于找工作,中断了数天,后面继续坚持
RPC=Remote Process Call=远程过程调用
相同点
都能实现服务调用
不同点
服务生产者和消费者必须是同一语言才能使用RPC,HTTP没这个限制,所以HTTP更灵活,因此微服务选择了HTTP
RPC开发时方便,消费者和生产者调依赖同一份接口即可,调其它服务就像调本地服务一样,微服务还要通过fegin才能达到同样的效果
RPC直接基于TCP协议, HTTP基于HTTP协议,所以PRC效率高(HTTP很臃肿)
如何选择
同一语言开发的内部服务,选RPC(因为效率高)
与第三方应用交互,选HTTP
RPC产品有:webservice、dubbo
TIP
面试时会接着“RPC是直接基于TCP,所以更快”来提问一些关于TCP和HTTP的问题:比如HTTP为什么比TCP慢?TCP三次握手和四次挥手知道吗?
参考
https://www.cnblogs.com/helloworldmybokeyuan/p/11626833.html