当前位置: 首页 > news >正文

关于RPC

1.什么是RPC

RPC(Remote Procedure Call),即远程过程调用(协议)。它允许像调用本地服务一样调用远程服务,用于实现分布式系统中跨网络进行通信 的技术,是一种计算机通信协议。

RPC是一种服务器-客户端(Client/Server)模式,经典实现是一个通过发送请求-接受回应进行信息交互的系统。

与RPC(远程过程调用)相对应的是本地调用。

2.什么是RPC框架,有什么优点

RPC 框架基于 RPC 协议实现,允许一个程序(称为服务消费者)像调用自己程序的方法一样,调用另一个程序(称为服务提供者)的接口,而不需要了解数据的传输处理过程、底层网络通信的细节等。这些都会由 RPC 框架帮你完成,使得开发者可以轻松调用远程服务,快速开发分布式系统

优点:

  1. 高性能:RPC 框架通常采用高效的网络通信协议和序列化/反序列化机制。
  2. 有额外功能:如负载均衡、服务发现、容错机制等,能提高系统的可靠性、可用性和稳定性。
  3. 支持动态扩展:开发者可以动态扩展 RPC 的功能,比如自定义负载均衡器、自定义序列化协议等。

常见的RPC框架有:阿里的Dubbo,Google的gRPC,Facebook的Thrift

3. HTTP 与 RPC 之间的区别

严格来讲,HTTP 和 RPC 不是一个层面的东西:

  • HTTP 是一种应用层的协议,主要强调的是网络通信;
  • RPC,其是一种分布式系统之间通信的方式,强调的是服务之间的远程调用。
  • HTTP 主要用于 B/S 架构,而 RPC 更多用于 C/S 架构。但现在其实已经没分那么清了,B/S 和 C/S 在慢慢融合。

相关文章:

  • 物联网 (IoT) 安全简介
  • Oracle数据库学习之路-目录
  • Nginx openresty web服务 与 Go 原生web服务性能对比
  • 跨平台.NET 版本 使用率排名
  • CAN总线接口卡有什么优势
  • 4.21—4.22学习总结 JavaWeb:HTML-CSS
  • 火山RTC 5 转推CDN 布局合成规则
  • Protues8.11安装只需5步骤即可。
  • 爱普生FC-12M晶振在车载系统中广泛应用
  • 【深度学习】#8 循环神经网络
  • WebRTC服务器Coturn服务器中的通信协议
  • MATLAB小技巧记录(特殊符号、图例位置...)
  • 符号速率估计——小波变换法
  • 基于微信小程序的走失儿童帮助系统-项目分享
  • Jenkins plugin 的用法和示例
  • Vue2-重要知识点
  • Linux学习——UDP
  • 中间系统-基础
  • 移远通信智能模组助力东成“无边界智能割草机器人“闪耀欧美市场
  • 护眼-科学使用显示器
  • 新能源车盈利拐点:8家上市车企去年合计净利854亿元,多家扭亏
  • 航海王亚洲巡展、工厂店直销……上海多区推出“五五购物节”活动
  • 【社论】法治是对民营经济最好的促进
  • 工业富联一季度净利增长25%,云计算业务营收增长超50%
  • 工行一季度净赚841亿元降3.99%,营收降3.22%
  • 秦洪看盘|上市公司业绩“排雷”近尾声,A股下行压力趋缓