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

【01初识】-初识 RabbitMQ

目录

  • 学习背景
  • 1- 初识 MQ
    • 1-1 同步调用
      • 什么是同步调用?
      • 小结:同步调用优缺点
    • 1-2 异步调用
      • 什么是异步调用?
      • 小结:异步调用的优缺点,什么时候使用异步调用?
    • 1-3 MQ 技术选型


学习背景

  • 异步通讯的特点:异步系统的并发很高。

实际业务场景:


1- 初识 MQ

1-1 同步调用

什么是同步调用?

  • 以支付服务为例子,如果一个商品的支付过程中涉及多个子操作。比如 余额扣减、支付状态更新、订单状态的更新、短息通知服务、积分服务等。
  • 这些额外的操作和支付过程中核心业务,也就是库存的扣减无关,如果采用同步的方式是一个耗时的过程。

小结:同步调用优缺点

在这里插入图片描述


1-2 异步调用

什么是异步调用?

异步调用方式其实就是基于消息通知的方式,一般包含三个角色:

  • 消息发送者:投递消息的人,就是原来的调用方。
  • 消息代理:管理、暂存、转发消息,你可以把它理解成微信服务器。
  • 消息接收者:接收和处理消息的人,就是原来的服务提供方。

下单场景下的异步调用

  • 支付服务不再同步调用业务关联度低的服务,而是发送消息通知到 Broker。

优点

  • 解除耦合,拓展性强
  • 无需等待,性能好
  • 故障隔离
  • 缓存消息,流量削峰填谷

小结:异步调用的优缺点,什么时候使用异步调用?

在这里插入图片描述


1-3 MQ 技术选型

  • MQ(Message Queue),中文是消息队列,字面开来就是存放消息的队列,也就是异步调用中的 Broker。

对比

  • 如果对消息的可靠性要求较高的话,需要使用 RabbitMQ ,如果对吞吐量有要求的话需要使用 Kafka 等。
  • RabbitMQ 是使用 Erlang 语言开发的,Erlang 是一种面向并发的语言,其次 RabbitMQ 支持的协议更多。
  • Kafka 利用与吞吐量非常大的场景下,比如大型的项目做日志收集。


http://www.lryc.cn/news/471816.html

相关文章:

  • CTF-RE 从0到N:汇编层函数调用
  • 雷池社区版compose配置文件解析-mgt
  • 无人机避障——4D毫米波雷达Octomap从点云建立三维栅格地图
  • Python(数据结构2)
  • 深入解析HTTP与HTTPS的区别及实现原理
  • Java IO 模型
  • 安装双系统后ubuntu无法联网(没有wifi标识)网卡驱动为RTL8852BE
  • Sqoop的安装配置及使用
  • R语言机器学习算法实战系列(十三)随机森林生存分析构建预后模型 (Random Survival Forest)
  • 三款计算服务器配置→如何选择科学计算服务器?
  • Oracle 19c RAC删除多余的PDB的方式
  • 什么是云渲染?云渲染有什么用?一篇看懂云渲染意思
  • MATLAB中 exist函数用法
  • 在银河麒麟系统中Qt连接达梦数据库
  • nodejs 服务器实现负载均衡
  • 今日总结10.29
  • 使用 FastGPT 工作流实现 AI 赛博算卦,一键生成卦象图
  • vue3+ts实时播放视频,视频分屏
  • 【网页设计】学成在线案例
  • 一篇文章总结 SQL 基础知识点
  • vue Element U 解决表格数据不更新问题
  • PeView 命令行PE文件解析工具
  • 微信小程序25__实现卡片变换
  • 使用Git进行团队协作开发
  • 期货跟单、量化交易模拟演示系统
  • Python小白学习教程从入门到入坑------第十八课 异常模块与包【下】(语法基础)
  • arcgis pro 3.3.1安装教程
  • Spring 获取Cookie/Session
  • 小红书接口数据查询优化指南
  • 数据结构 - 图