SpringCloud微服务学习笔记(三)_RabbitMQ

文章目录

RabbitMQ

  • 同步通讯
    在同步通信中,发送方发出请求后,会等待接收方处理完成并返回结果后再继续执行。也就是说,发送方在收到响应之前会被"阻塞"。
    比如支付操作
  • 异步通信
    在异步通信中,发送方发出请求后,不需要等待接收方处理完成,而是立即返回并继续执行后续操作。接收方在处理完成后,会通过回调或事件通知发送方结果。
    比如短信发消息
    同步调用和异步调用的概念还是有差异的,通讯面向用户,调用面向服务器

同步调用的优缺点(所有服务同时处理)

消息提供者-->消息消费者,消息传完就没了

  • 优点
    时效性强,等待到结果后才返回
  • 缺点
    拓展性差
    性能下降
    级联失败问题

异步调用的优缺点(服务异步处理)

消息提供者-->消息代理-->消息消费者

  • 优点
    耦合度低,拓展性强
    异步调用,无需等待,性能好
    故障隔离,下游服务故障不影响上游业务
    缓存消息,流量削峰填谷
  • 缺点
    不能立刻得到调用结果,时效性差
    不确定下游业务执行是否成功
    业务安全依赖于Broker(消息队列中间件)的可靠性
相关推荐
利威尔xu8 小时前
Go IM 源码实战(14):本地缓存快 3000 倍,失效却难 10 倍
后端·缓存·微服务·面试·golang
逃逸线LOF9 小时前
Ribbon负载均衡原理(Irule组件、源码分析)
后端·spring cloud·ribbon
视觉小萌新9 小时前
AI Class 3 · Chapter 1:变量、字符串、list/dict、if/for(python学习-小白版-有经验可跳过)
python·学习·list
利威尔xu9 小时前
Go IM 源码实战(13):30 个会话只有 2 个红点,未读数错在三条路径
redis·后端·微服务·面试·golang
yyyang8812 小时前
蓝牙系统整体架构详解
学习·信息与通信
Linux-lucky12 小时前
46-Linux学习之旅之LVS负载均衡与keepalived高可用
linux·运维·学习·ubuntu·负载均衡·lvs
金色光环14 小时前
【DSP学习】C2000_ADC中断_笔记
笔记·学习
Дерек的学习记录14 小时前
Unreal Engine 5:第三人称运动系统和人物动画
开发语言·学习·ue5
zhangrelay14 小时前
mrpt杂乱笔记-26-10-31
笔记·学习
衡石科技15 小时前
让多轮问数保持口径一致:Data Agent 的上下文、偏好与学习开关
人工智能·学习·安全