rpc和消息队列区别

RPC 和消息队列都是分布式微服务系统中重要的组件之一,下面我们来简单对比一下两者:

  • 从用途来看:RPC 主要用来解决两个服务的远程通信问题,不需要了解底层网络的通信机制。通过 RPC可以帮助我们调用远程计算机上某个服务的方法,这个过程就像调用本地方法一样简单。消息队列主要用来降低系统耦合性、实现任务异步、有效地进行流量削峰。
  • 从通信方式来看:RPC 是双向直接网络通讯,消息队列是单向引入中间载体的网络通讯。
  • 从架构上来看:消息队列需要把消息存储起来,RPC则没有这个要求,因为前面也说了 RPC 是双向直接网络通讯。
  • 从请求处理的时效性来看:通过 RPC发出的调用一般会立即被处理,存放在消息队列中的消息并不一定会立即被处理。

RPC 和消息队列本质上是网络通讯的两种不同的实现机制,两者的用途不同,万不可将两者混为一谈。

相关推荐
掘金-我是哪吒6 分钟前
分布式微服务系统架构第158集:JavaPlus技术文档平台日更-JVM基础知识
jvm·分布式·微服务·架构·系统架构
小白爱电脑7 分钟前
光纤的最小弯曲半径是多少?
网络
东窗西篱梦40 分钟前
Redis集群部署指南:高可用与分布式实践
数据库·redis·分布式
Acrel_Fanny41 分钟前
Acrel-1000系列分布式光伏监控系统在湖北荆门一马光彩大市场屋顶光伏发电项目中应用
分布式
xufwind1 小时前
spark standlone 集群离线安装
大数据·分布式·spark
泽02021 小时前
C++之红黑树认识与实现
java·c++·rpc
花落已飘1 小时前
多线程 vs 异步
linux·网络·系统架构
半新半旧2 小时前
Redis集群和 zookeeper 实现分布式锁的优势和劣势
redis·分布式·zookeeper
亲爱的非洲野猪2 小时前
Kafka “假死“现象深度解析与解决方案
分布式·kafka
CodeWithMe2 小时前
【Note】《Kafka: The Definitive Guide》第三章: Kafka 生产者深入解析:如何高效写入 Kafka 消息队列
分布式·kafka