美文网首页
消息队列

消息队列

作者: 化蝶飞618 | 来源:发表于2019-12-19 10:26 被阅读0次

MQ的作用

  • 消息通信
    MQ的基础功能即为消息通信。使用MQ的客户端可以将消息发送到MQ中,也可以从MQ中消费消息。
  • 异步处理
    MQ作为一个数据传输的通道,可以将消息传输异步化。生产者将消息生产放入MQ中,可以继续生产其他消息,不要求获得消费者的消费信号之后再生产。
    MQ也可以将RPC异步化。传统的RPC直接调用,可以转化为调用方生产消息,将原本RPC请求的内容放在消息体中,然后由RPC的被调用方去消费消息并进行处理。如果有返回结果,可以将结果再通过另外一个队列发送给调用方。
  • 应用解耦
    以订单系统和库存系统为例,用户下单后,订单系统需要通知库存系统。
    传统模式中,假如库存系统无法访问,则订单减库存将失败,从而导致订单失败。 订单系统与库存系统耦合。
    引入MQ,用户下单后,订单系统:完成持久化处理,将消息写入消息队列,返回用户订单下单成功;库存系统:订阅下单的消息,采用拉/推的方式,获取下单信息,库存系统根据下单信息,进行库存操作。他们直接交互的只有MQ服务,从而实现应用解耦。
  • 削峰控流
    在一些应用场景中,经常出现某种消息流量激增的情况,比如秒杀活动中的用户请求。这种情况下,下游业务可能来不及处理导致整个服务崩溃。引入MQ后,流量激增的消息可以缓存入队列中,下游业务缓慢消费,尽管有一定的延迟,但能保证整体服务稳定运行。

相关文章

  • 消息队列:消息队列简介

    1. 什么是消息队列 消息队列(message queue),是一种应用程序的通信方法; 消息队列是 生产者-消费...

  • 消息中间件

    消息中间件,也可以叫做中央消息队列或者是消息队列(区别于本地消息队列,本地消息队列指的是 JVM 内实现的队列实现...

  • 消息队列对比

    引用: 常用消息队列对比消息队列及常见消息队列介绍 常用消息队列 1. RabbitMQ 用erlang语言开发的...

  • 消息队列应用-使用异步队列就解耦了吗

    消息队列作用一文介绍了为什么要使用消息队列。我们再来讨论下如何有效使用消息队列。 消息队列模式 目前主流消息队列主...

  • Kafka常见问题解决

    概要:我们使用消息队列,就需要知道为什么要用消息队列,什么场景需要用消息队列,使用消息队列能带来哪些好处和消息队列...

  • 进程间通信(下)

    消息队列 在UNP第二卷中详细介绍了两种消息队列:Posix消息队列和System V消息队列。这两种消息队列很相...

  • APUE读书笔记-15进程内部通信(6)

    7、消息队列 消息队列是存放在内核中的消息的链表,通过消息队列标识进行标记。我们把消息队列称为队列,把它的标识称为...

  • java消息机制

    1.什么是消息队列? 1.消息队列是一个队列,先进先出,你无法读取消息队列中间的消息,只能按照顺序,从消息队列的头...

  • springboot项目架构(4)activemq、rabbit

    消息队列实现 支持的消息队列 ActiveMq RabbitMq RocketMq Kafka 各个队列实现队列与...

  • 进程间通信(7)-IPC通信之消息队列

    一、消息队列 消息队列是一种链式队列。 Msqid_ds:维护消息队列的结构体,队列的第一个消息指针msg_fir...

网友评论

      本文标题:消息队列

      本文链接:https://www.haomeiwen.com/subject/qoqmnctx.html