精华内容
下载资源
问答
  • MQ几种方式

    2019-10-15 13:40:52
    MQ几种方式

    MQ的几种方式

    展开全文
  • MQ几种模式

    千次阅读 2019-11-04 10:49:04
    MQ几种模式: Producer消息产生者,红色队列,Customer消息消费者,蓝色交换机exchange 简单模式:消息产生者产生消息,消息的消费者进行消费 工作模式:消息消费产生消息,将消息发送到消息队列中,...

    MQ的几种模式:

    Producer消息产生者,红色队列,Customer消息消费者,蓝色交换机exchange

    简单模式:消息产生者产生消息,消息的消费者进行消费
    工作模式:消息消费产生消息,将消息发送到消息队列中,这是竞争,消费者1和消费者2都监听消息队列,当队列中有消息,一起来抢消息。谁抢到谁处理。
    消息发布和订阅:消息产生者产生消息,将消息发送到交换机中。多个消息队列绑定到交换机上。交换机将消息发送到多个队列中。消费者1监听自己的队列,如果有消息就进行消费。消费者2监听自己的队列,如果有消息进行消费。
    路由模式:比发布订阅模式多了一个路由选择,称为路由key。路由key指定一个名称。队列在绑定到交换机时,还要设置这个路由key。消息的队列中不是所有的消息了,交换机会根据消息的路由key,选择性将消息传递给消息队列。
    主题模式:在路由模式基础上,让路由key可以使用通配符。相当于进行分类。灵活程度更高些。隐患:容易误伤。

     

    展开全文
  • 谈谈mq消息消费的几种方式

    千次阅读 2019-05-06 07:36:32
    mq系列文章对mq了解不是很多的,可以看一下下面两篇文章:聊聊mq的使用场景聊聊业务系统中投递消息到mq几种方式聊聊消息消费的几种方式如何确保消息至少消费一次如何保证消...

    mq系列文章

    对mq了解不是很多的,可以看一下下面两篇文章:

    1. 聊聊mq的使用场景

    2. 聊聊业务系统中投递消息到mq的几种方式

    3. 聊聊消息消费的几种方式

    4. 如何确保消息至少消费一次

    5. 如何保证消息消费的幂等性

    本章内容

    从消费者的角度出发,分析一下消息消费的两种方式:

    1. push方式

    2. pull方式

    push方式

    消息消费的过程:

    1. mq接收到消息

    2. mq主动将消息推送给消费者(消费者需提供一个消费接口)

    mq属于主动方,消费者属于一种被动消费,一旦有消息到达mq,会触发mq推送机制,将消息推送给消费者,不管消费者处于何种状态。

    优点:

    1. 消费者代码较少:对于消费者来说,只需提供一个消费接口给mq即可;mq将接收到的消息,随即推送到指定的消费接口

    2. 消息实时性比较高:对于消费者来说,消息一旦到达mq,mq会立即推送给消费者

    缺点:

    1.消费者属于被动方,消息量比较大时,对消费者性能要求比较高;若消费者机器资源有限,可能会导致压力过载,引发宕机的情况。

    2.对消费者可用性要求比较高:当消费者不可用时,会导致很push失败,在mq方需要考虑至少推送成功一次,这块的设计下章节会做说明。

    pull方式

    消息消费的过程:

    1.消费端采用轮询的方式,从mq服务中拉取消息进行消费

    2.消费完成通知mq删除已消费成功的消息

    3.继续拉取消息消费

    对于消费者来说,是主动方,可以采用线程池的方式,根据机器的性能来增加或缩小线程池的大小,控制拉取消息的速度,可以很好的控制自身的压力。

    优点

    1.消费者可以根据自己的性能主动控制消息拉去的速度,控制自己的压力,不至于把自己弄跨

    2.实时性相对于push方式会低一些

    3.消费者属于主动方,控制权更大一些

    缺点:

    1.消费方需要实现消息拉取的代码

    2.消费速度较慢时,可能导致mq中消息积压,消息消费延迟等

    总结

    1. 消费者性能较好,对实时性要求比较高的,可以采用push的方式

    2. 消费者性能有限,建议采用pull的方式

    3. 整体上来说,主要在于消费者的性能,机器的性能如果没有问题,push和pull都是可以的

    4. 大家有什么看法,可以留言一起讨论,希望本文对你有所帮助

    下章将讨论在如何确保消费者至少消费一次、消息消费的幂等性处理等通用的设计。

    如果你喜欢路人甲Java的文章

    请分享给你的朋友

    让更多的人看见

    万分感谢

    640?wx_fmt=jpeg

    展开全文
  • MQ几种消息传递方式

    千次阅读 2018-02-07 00:15:13
    MQ几种消息传递方式 发布订阅模式 发布订阅模式有点类似于我们日常生活中订阅报纸。每年到年尾的时候,邮局就会发一本报纸集合让我们来选择订阅一个。在这个表里头列了所有出版发行的报纸,那么对于我们每一个...


    MQ的几种消息传递方式

    发布订阅模式

    发布订阅模式有点类似于我们日常生活中订阅报纸。每年到年尾的时候,邮局就会发一本报纸集合让我们来选择订阅哪一个。在这个表里头列了所有出版发行的报纸,那么对于我们每一个订阅者来说,我们可以选择一份或者多份报纸。比如北京日报、潇湘晨报等。那么这些个我们订阅的报纸,就相当于发布订阅模式里的topic。有很多个人订阅报纸,也有人可能和我订阅了相同的报纸。那么,在这里,相当于我们在同一个topic里注册了。对于一份报纸发行方来说,它和所有的订阅者就构成了一个1对多的关系。这种关系如下图所示:


    发布订阅模式

    点对点模式

    点对点模式就相当于打电话,由两端的双方独享这一通信链路


    点对点模式

    扩展的对点模式

    和前面两种方式比较起来,request-response的通信方式很常见,但是不是默认提供的一种模式。在前面的两种模式中都是一方负责发送消息而另外一方负责处理。而我们实际中的很多应用相当于一种一应一答的过程,需要双方都能给对方发送消息。于是请求-应答的这种通信方式也很重要。它也应用的很普遍。
    请求-应答方式并不是JMS规范系统默认提供的一种通信方式,而是通过在现有通信方式的基础上稍微运用一点技巧实现的。下图是典型的请求-应答方式的交互过程:


    request-response

    我在项目中的理解

    MQ其实就是一个消息中转站。
    在企业级的应用里,会有一个服务器集群来作为这个中转站,这个集群中有主从,有备份,有路由,有网关。此时MQ就是就是一种中间件,在个人的实验中体会不到这种感觉。
    企业级的MQ不仅仅实现了简单的消息中转站的功能,还实现了消息生产者和消息消费者的认证功能(即他们能消费和生产哪些具体的topic)。
    附一张企业MQ的架构图


    mq集群

    MQ的缺点

    1. mq的主要问题在于重复生产和重复消费(延迟也是一个很大的缺点,但是这可以换来性能上的提升,监听获取信息肯定比轮询获取信息的效率高)。
    2. 比如几个业务系统需要消费一个点对点模式的mq消息,其中一个业务系统消费成功了但是并没有向mq服务器成功发送消费成功的确认ack,导致消息在mq服务器中依然存在,从而导致其他业务系统的重复消费。
    3. 再比如生产者如果没有接收到mq服务器的确认消息,就会重复生产,如果在服务器没有相应的去重措施,就会带来很大的隐患。
    4. 所以在使用MQ的时候,最重要的问题不是在于怎么去用它,而是怎么在业务系统中解决重复生产和重复消费的问题。具体的得根据系统允许的容错率和业务来进行相应的处理。
    5. 我主要说一下在服务器端对MQ进行去重的方法,如果是同一topic的信息,可以通过对消息内容进行摘要运算从而达到简单的去重效果。


    实现可靠MQ和去重参考方法


    消息的可靠性设计,目前有2种模式:模式1是采用Notify的方式,先发送半消息,业务操作成功后最后提交完整消息,同时提供业务操作的检查接口,这种模式实现消息的最终一致性;模式2将业务数据和消息数据先都存在业务数据库里面,通过数据库的事务保证一致性,随后将消息转发给MQ。模式1的缺点是业务侵入性高,方案比较复杂,需要重新实现;模式2的缺点是消息数据可能会散落在各个地方,包括业务系统,而且可以集成现有MQ。

    • 消息去重设计,也有2种模式:模式1是消费者根据自己的业务实现去重,模式2是在消费者端增加一个数据库表专门记录已经消费过的消息,不需要消费者根据业务去做去重。


    展开全文
  • mq属于主动方,消费者属于一被动消费,一旦消息到达mq,会触发mq推送机制,将消息推送给消费者,不管消费者处于何状态。 优点: 1. 消费者代码较少:对于消费者来说,只需提供一个消费接口给mq即可;mq将...
  • 聊聊mq中消息消费的几种方式 本章内容 从消费者的角度出发,分析一下消息消费的两种方式: push方式 pull方式 push方式 消息消费的过程: mq接收到消息 mq主动将消息推送给消费者(消费者需提供一个...
  • 聊聊mq中消息消费的几种方式

    千次阅读 2019-05-06 09:07:13
    聊聊业务系统中投递消息到mq几种方式 聊聊消息消费的几种方式 如何确保消息至少消费一次 如何保证消息消费的幂等性 本章内容 从消费者的角度出发,分析一下消息消费的两种方式: push方式 pull方式 push方式 ...
  • 几种常见的MQ总结对比

    万次阅读 多人点赞 2020-06-27 12:12:08
    不少候选人,说自己项目里用了 Redis、MQ,但是其实他并不知道自己为什么要用这个东西。其实说白了,就是为了用而用,或者是别人设计的架构,他从头到尾都没思考过。 没有对自己的架构问过为什么的人,一定是平时...
  • 1.MQ几种消息传递方式

    万次阅读 2017-11-20 15:40:24
    每年到年尾的时候,邮局就会发一本报纸集合让我们来选择订阅一个。在这个表里头列了所有出版发行的报纸,那么对于我们每一个订阅者来说,我们可以选择一份或者多份报纸。比如北京日报、潇湘晨报等。那么这些个我们...
  • 电商中这样的一个场景: 下单成功之后送积分的操作,我们使用mq来实现 下单成功之后,投递一条消息到mq,积分系统消费消息,给用户增加积分 我们主要讨论一下,下单及投递消息到mq的操作,如何实现?每方式优...
  • MQ】常见的几种消息队列及其特点

    千次阅读 2020-12-10 17:37:07
    三、常见的几种消息队列及其特点 当前生产环境,使用较多的消息队列ActiveMQ,RabbitMQ,ZeroMQ,Kafka,MetaMQ,RocketMQ等。 1. ActiveMQ: ActiveMQ是Apache出品,最流行的,能力强劲的开源消息总线,并且它一...
  • RabbitMQ,ActiveMQ,ZeroMQ,Kafka几种MQ的比较

    千次阅读 2016-08-02 18:41:11
    几种MQ到底应该选择哪个?要根据自己项目的业务场景和需求。下面我列出这些MQ之间的对比数据和资料。 第一部分:RabbitMQ,ActiveMq,ZeroMq比较 1、 TPS比较 一 ZeroMq 最好,RabbitMq 次之, ActiveMq 最差...
  • 几种MQ消息队列对比与消息队列之间的通信问题
  • 排查原因,发现以下几种情况: 序号 原因 解决办法 1 没有创建对应的用户 手动创建与配置文件中相对应的用户 2 没有创建对应的 Virtual host 手动给该用户配置 Virtual host 权限 ...
  • 不少候选人,说自己项目里用了 Redis、MQ,但是其实他并不知道自己为什么要用这个东西。其实说白了,就是为了用而用,或者是别人设计的架构,他从头到尾都没思考过。 没有对自己的架构问过为什么的人,一定是平时...
  • MQ消息队列详解、四大MQ的优缺点分析

    万次阅读 多人点赞 2020-03-07 16:05:28
    近期了想跳槽的打算,所以自己想巩固一下自己的技术,想了解一些面试比较容易加分的项,近期准备深入研究一下redis和mq这两样,这总体上都是为了解决服务器并发的原因,刚翻到了一篇关于mq的,觉得写得特别好,...
  • MQ 哪些使用场景?

    2020-05-26 22:18:19
    用户注册完成后,提交任务到 MQ,发送模块并行获取 MQ 中的...活动开始时流量暴增,用户的请求写入 MQ,超过 MQ 最大长度丢弃请求,业务系统接收 MQ 中的消息进行处理,达到流量削峰、保证系统可用性的目的。 日志处理
  • 2.robbitmq RabbitMQ是AMQP协议领先的一个实现,它实现了代理(Broker)架构 1.结合erlang语言本身的并发优势,性能较好,但是不利于做二次开发和维护 2.消息在发送到客户端之前可以在中央节点上排队。此特性...
  • 1,今天这里就说一下mq在三常见的情况下的使用(耦合,异步,削峰),还没接触使用过的朋友可以自己去网上下一个,看看别人写的文档,简单的用一下很简单,下面我们就简单的说一下常见的使用方式。 一,耦合 现在...
  • 前言 不知道你是否遇到过这样的情况,去小卖铺买东西,付了钱,但是店主因为处理了一些其他事,居然忘记你付了钱,又叫你重新付。又或者在网上购物明明已经扣款,但是却告诉我没有发生交易。...事务提供一机制...
  • mq的6模式

    2020-12-08 22:59:39
    首先队列有几个概念要清楚 生产者producer:生产者向队列发送消息 消费者consumer:消费者从队列获取消息 交换机exchange:图中的x,订阅模式,生产者将消息发给交换机,由交换机选择把消息给谁 通道channel:创建了...
  • 消息中间件MQ与RabbitMQ面试题(2020最新版)

    万次阅读 多人点赞 2020-03-01 11:11:21
    MQ的优点消息队列什么优缺点?RabbitMQ什么优缺点?你们公司生产环境用的是什么消息中间件?Kafka、ActiveMQ、RabbitMQ、RocketMQ 什么优缺点?MQ 哪些常见问题?如何解决这些问题?什么是RabbitMQ?...
  • mq的5模式

    千次阅读 2018-06-21 16:33:47
    发送消息的x交换机(转发器):接受、推送消息q消息列队:接受、存取、推送消息(准备,未删除,总计)c消费者:接受消息1、默认情况,消费者一旦接受消息消息队列中的消息就会删除,并且只有消息列队存储功2、...
  • mq研究报告

    2015-04-03 14:27:03
    对比几种主流的mq的研究,包括activeMq等
  • MQ框架

    2016-09-14 16:21:36
    ...MQ框架非常之多,比较流行的RabbitMq、ActiveMq、...这几种MQ到底应该选择哪个?要根据自己项目的业务场景和需求。下面我列出这些MQ之间的对比数据和资料。 第一部分:RabbitMQ,ActiveMq,ZeroMq比较
  • 不管是哪种情况吧,那么接下来我就以自然语言的方式与大家轻松的来讨论一下mq相关的东西吧。 什么是mq? 什么是mq呢?其实相比mq这个叫法,国内好多朋友更喜欢叫消息队列,既然是这样的话,那么想必mq一定是 message ...
  • MQ发送普通消息(三方式)

    万次阅读 2017-05-07 21:03:14
    MQ 发送普通消息实现方式:可靠同步发送、可靠异步发送、单向(Oneway)发送。本文介绍了每实现的原理、使用场景以及三实现的异同,同时提供了代码示例以供参考。 可靠同步发送 原理:同步发送是...
  • 消息中间件(一)MQ详解及四大MQ比较

    万次阅读 多人点赞 2018-08-29 22:05:58
    一、消息中间件相关知识 ...当今市面上很多主流的消息中间件,如老牌的ActiveMQ、RabbitMQ,炙手可热的Kafka,阿里巴巴自主开发RocketMQ等。   2、消息中间件的组成  2.1 Broker 消息服务器...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 43,254
精华内容 17,301
关键字:

mq有哪几种