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

文章目录

RabbitMQ

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

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

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

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

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

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

  • 优点
    耦合度低,拓展性强
    异步调用,无需等待,性能好
    故障隔离,下游服务故障不影响上游业务
    缓存消息,流量削峰填谷
  • 缺点
    不能立刻得到调用结果,时效性差
    不确定下游业务执行是否成功
    业务安全依赖于Broker(消息队列中间件)的可靠性
相关推荐
阿里云云原生几秒前
MSE 铂金版:全面拥抱 AI,SLA 99.99%,零信任安全
微服务·云原生
朱小勇本勇13 分钟前
Qt自带示例及官方文档学习
开发语言·qt·学习
你真会40 分钟前
【数据结构知识分享】顺序表详解
数据结构·学习·算法
vijaycc1 小时前
python学习打卡day43
学习
会飞的架狗师1 小时前
为何选择Spring框架学习设计模式与编码技巧?
学习·spring·mybatis
@蓝莓果粒茶1 小时前
LeetCode第245题_最短单词距离III
c语言·c++·笔记·学习·算法·leetcode·c#
小小星球之旅2 小时前
redis缓存常见问题
数据库·redis·学习·缓存
Haoea!2 小时前
Flink03-学习-套接字分词流自动写入工具
开发语言·学习
哆啦A梦的口袋呀2 小时前
基于Python学习《Head First设计模式》第三章 装饰者模式
python·学习·设计模式
哆啦A梦的口袋呀2 小时前
基于Python学习《Head First设计模式》第五章 单件模式
python·学习·设计模式