MQ系列6:消息的消费】的更多相关文章

MQ系列1:消息中间件执行原理 MQ系列2:消息中间件的技术选型 MQ系列3:RocketMQ 架构分析 MQ系列4:NameServer 原理解析 MQ系列5:RocketMQ消息的发送模式 在之前的文章中,我们学习了RocketMQ的原理:RocketMQ中 命名服务 ServiceName 的运行流程:以及消息生产.发送的原理和模式.这一篇,就让我们从消息消费的角度去进一步的学习. 1 消息消费 消息的消费主要是由如下几个核心能力组成的: 消费方式:Push(推) 或者 Pull(拉) 消…
[MQ 系列]RabbitListener 消费基本使用姿势介绍 之前介绍了 rabbitmq 的消息发送姿势,既然有发送,当然就得有消费者,在 SpringBoot 环境下,消费可以说比较简单了,借助@RabbitListener注解,基本上可以满足你 90%以上的业务开发需求 下面我们来看一下@RabbitListener的最最常用使用姿势 I. 配置 首先创建一个 SpringBoot 项目,用于后续的演示 springboot 版本为2.2.1.RELEASE rabbitmq 版本为…
MQ系列1:消息中间件执行原理 MQ系列2:消息中间件的技术选型 MQ系列3:RocketMQ 架构分析 MQ系列4:NameServer 原理解析 在之前的篇章中,我们学习了RocketMQ的原理,以及RocketMQ中 命名服务 ServiceName 的运行流程,本篇从消息的生产.消费来理解一条消息的生命周期. 1 消息生产 在RocketMQ中,消息生产指的是 消息生产者往消息队列中写入数据的过程.因为业务场景的复杂性,RocketMQ架构设计了多种不同的发送策略.下面先讨论几种常见的场…
[MQ 系列]RabbitMq 核心知识点小结 以下内容,部分取材于官方教程,部分来源网络博主的分享,如有兴趣了解更多详细的知识点,可以在本文最后的文章列表中获取原地址 RabbitMQ 是一个基于 AMQP 协议实现的企业级消息系统,想要顺畅的玩耍的前提是得先了解它,本文将主要介绍 rabbitmq 的一些基本知识点 特点 基本概念 消息投递消费的几种姿势 事务 集群 I. 基本知识点 它是采用 Erlang 语言实现的 AMQP(Advanced Message Queued Protoco…
这是<吃透XXX>技术系列的开篇,这个系列的思路是:先找到每个技术栈最本质的东西,然后以此为出发点,逐渐延伸出其他核心知识.所以,整个系列侧重于思考力的训练,不仅仅是讲清楚 What,而是更关注 Why 和 How,以帮助大家构建出牢固的知识体系. 回到正文,这是<吃透 MQ>的第一篇文章.本文主要讲解 MQ 的通用知识,让大家先弄明白:如果让你来设计一个 MQ,该如何下手?需要考虑哪些问题?又有哪些技术挑战? 有了这个基础后,我相信后面几篇文章再讲 Kafka 和 RocketM…
日常Bug排查-消息不消费 前言 日常Bug排查系列都是一些简单Bug排查,笔者将在这里介绍一些排查Bug的简单技巧,同时顺便积累素材_. Bug现场 某天下午,在笔者研究某个问题正high的时候.开发突然找到笔者,线上某个系统突然消费不了queue了.Queue不消费也算是日常问题了.淡定的先把流量切到另一个机房,让问题先恢复再说. 消息累积 然后就是看不消费的queue到哪去了,打开mq(消息中间件)控制台,全部累积到mq上了. 同时开发对笔者反映,只有这个queueu积累了,其它queue…
大家好,这是<吃透 MQ 系列>的第二弹,有些珊珊来迟,后台被好几个读者催更了,实属抱歉! 这篇文章拖更了好几周,起初的想法是:围绕每一个具体的消息中间件,不仅要写透,而且要控制好篇幅,写下来发现实在太难了,两者很难兼得. 最后决定还是分成多篇写吧.一方面,能加快下输出频率:另一方面,大家也更容易消化. 废话不多说了,第二弹开始发车. 01 为什么从 Kafka 开始? <吃透 MQ >的开篇 围绕 MQ 「一发一存一消费」的本质展开,讲解了 MQ 的通用知识,同时系统性地回答了:…
MQ系列1:消息中间件执行原理 MQ系列2:消息中间件的技术选型 1 背景 我们前面两篇对主流消息队列的基本构成和技术选型做了详细的分析.从本篇开始,我们会专注当下主流MQ之一的RocketMQ. 从他的如下的几个方面去讨论: 基础能力(如 组织构成.消息发送.消息存储(持久化).消息通信.消息消费) 功能性方面(如消息堆积.消息回溯.消息追踪.消息过滤), 高可用性方面(如 消息顺序性保障.消息幂等性保障.消息安全性保障.消息事务性保障), 性能方面(如时效性,单机吞吐率) 参考 MQ系列2:…
MQ系列1:消息中间件执行原理 MQ系列2:消息中间件的技术选型 MQ系列3:RocketMQ 架构分析 1 关于NameServer 上一节的 MQ系列3:RocketMQ 架构分析,我们大致介绍了 RocketMQ的基本组件构成,包括 NameServer.Broker.Producer以及Consumer四部分. NameServer,指的是服务可以根据给定的名字来进行资源或对象的地址定位,并获取有关的属性信息.在Rocket中也一样,NameServer是 RocketMQ 的服务注册中…
消费端消费消息: 在 初识ActiveMQ 中我提到过,两种方法可以接收消息,一种是使用同步阻塞的ActiveMQMessageConsumer#receive方法.另一种是使用消息监听器MessageListener.这里需要注意的是,在同一个session下,这两者不能同时工作,也就是说不能针对不同消息采用不同的接收方式.否则会抛出异常.至于为什么这么做,最大的原因还是在事务性会话中,两种消费模式的事务不好管控. 先通过ActiveMQMessageConsumer#receive 方法来对…