首页 >

既然有http请求,为什么还要用rpc调用? – 网络|

bclk 怎么超,如何排查网络安全事件隐私,kpi指标数据库怎么做既然有http请求,为什么还要用rpc调用? - 网络|既然有http请求,为什么还要用rpc调用

HTTP和RPC是完全不同的概念

在这里大家需要搞清楚一点的是,HTTP和RPC在概念上就是不同的,两种是不能相提并论的。

  • HTTP是超文本传输协议;

  • RPC是指远程过程调用,它是对不同系统间相互调用方式的一种描述,RPC不是协议也不是一种新技术,严格意义上应该称它是一种解决方案(概念)或技术实现的框架。RPC框架底层一般支持多种协议,比如:HTTP、TCP、自定协议等。
    所以说RPC也是可以通过HTTP来实现的!

RPC与HTTP调用的应用场景

RPC框架提供的是面向服务的封装,它针对服务的性能效率、可用性等都做了优化(比如提供了:注册中心、服务治理、负载均衡、二进制传输、熔断、服务降级等功能),是一套完整的解决方案;而HTTP调用缺少这些高级特性,它只是简单的数据通信,另外HTTPAPI受限于HTTP协议(要带HTTP请求头),传输效率及安全性不如RPC。

为什么使用RPC而不是简单的HTTPAPI?

HTTPAPI一般在接口数量不多的情况下采用的,因为它使用起来简单快捷,直接利用现成的HTTP协议就可以进行数据传输。

但对于一个大型项目,内部模块子系统众多,接口也变得很多了,在这种情况下如果再使用一个个零散的HTTPAPI,维护成本极高。所以RPC框架优点就显示出来了,比如说:

  • 支持长链接,减少了网络开销;

  • 拥有注册中心,服务治理起来更方便;

  • 有监控功能,易于定位问题;

  • 对调用方来说是无感知、统一化的。

以上就是偶的观点,对于这个问题大家是怎么看待的呢?欢迎在下方评论区交流~偶是科技领域创作者,十年互联网从业经验,偶了解更多科技知识!

既然有http请求,为什么还要用rpc调用? - 网络|
  • 微软推出全新的WinUI框架? - 网络|
  • 微软推出全新的WinUI框架? - 网络| | 微软推出全新的WinUI框架? - 网络| ...

    既然有http请求,为什么还要用rpc调用? - 网络|
  • 信号调制常用的三种方法是? - 网络|
  • 信号调制常用的三种方法是? - 网络| | 信号调制常用的三种方法是? - 网络| ...

    既然有http请求,为什么还要用rpc调用? - 网络|
  • 学习C语言中的status常量详解 - 网络|
  • 学习C语言中的status常量详解 - 网络| | 学习C语言中的status常量详解 - 网络| ...