【RabbitMQ基础】-RabbitMQ:初识MQ[1]

简介

RabbitMQ (高性能的异步通讯组件)

RabbitMQ是一个开源的消息队列中间件,它实现了高级消息队列协议(AMQP)标准。它是一种可靠、可扩展、灵活和可插拔的解决方案,用于处理异步消息传递和事件驱动系统。RabbitMQ提供了可靠的消息传递机制,并支持多种消息传递模式,如点对点、发布/订阅和请求/响应。它可以用于构建分布式系统、微服务架构、大规模数据处理等场景。RabbitMQ提供了丰富的功能,如消息持久化、消息路由、消息优先级、消息延迟等,可以满足各种复杂的消息传递需求。它还提供了多种语言的客户端库,如Java、Python、Ruby等,方便开发者使用。总之,RabbitMQ是一个强大而灵活的消息队列中间件,被广泛应用于各种企业级系统中。

一、同步调用

我们以商城的余额支付为例:

由于下边的操作要依赖于上边的操作,只有当上边的操作完成才能一步步的接下来完成往后的每一步,这将导致性能下降,拓展性差。

同步调用的优势是:时效性强,等待到结果后才返回

二、异步调用

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

消息发送者:投递消息的人,就是原来的调用方

消息代理:管理、暂存、转发消息,你可以把它理解为微信服务器

消息接受者:接收和处理消息的人,就是原来的服务提供方

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

具备下列优势:

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

异步调用的问题:

  • 不能立即得到调用结果,时效性差
  • 不确定下游业务执行是否成功
  • 业务安全依赖于Broker的可靠性

三、MQ技术选型

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

  • 7
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值