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

文章目录

RabbitMQ

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

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

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

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

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

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

  • 优点
    耦合度低,拓展性强
    异步调用,无需等待,性能好
    故障隔离,下游服务故障不影响上游业务
    缓存消息,流量削峰填谷
  • 缺点
    不能立刻得到调用结果,时效性差
    不确定下游业务执行是否成功
    业务安全依赖于Broker(消息队列中间件)的可靠性
相关推荐
一隅论数智18 小时前
给AI一张“业务概念地图“:本体如何从哲学走向企业智能
大数据·人工智能·经验分享·笔记·学习·学习方法·政务
XiHongShi201618 小时前
STM32F407 RTC定时器例程,建议保存
stm32·单片机·学习
爱吃苹果的日记本19 小时前
离散数学第六课
学习·离散数学
AI职业加油站20 小时前
AI智能体应用工程师证书:政策红利下的职业新风口
大数据·运维·人工智能·学习·职场发展
旖旎夜光20 小时前
力控面试题 01.01: 判定字符是否唯一(位运算) —— 题解
c++·学习·算法·leetcode·力控
奇思妙想聪明勤奋的小羊21 小时前
DeepAgents第5章:子Agent 与上下文隔离—让 Agent学会委派
人工智能·python·学习·语言模型
霍霍的袁21 小时前
【C++】map 和 set 的使用 | 从用法到底层
开发语言·c++·学习·visual studio
彧azz21 小时前
Linux 环境下 Redis 学习总结:数据类型、持久化、锁、事务、主从与缓存问题
linux·redis·笔记·学习·面试
我爱cope21 小时前
【操作系统 | 计算机硬件:CPU、内存与 I/O 如何支撑操作系统?】
学习·操作系统