RabbitMQ
Java不难的
=
展开
-
消息中间件合集:MQ(ActiveMQ/RabbitMQ/RocketMQ)+Kafka+笔记
消息中间件合集:MQ(ActiveMQ/RabbitMQ/RocketMQ)+Kafka+笔记最近有好多朋友都去投岗秋招提前批,面完回来跟我说碰到消息中间件一类的问题就挂了。额,有点不知所措,于是乎小编就想着做一次消息中间件的专题,归类整理了MQ(ActiveMQ/RabbitMQ/RocketMQ)+Kafka 等的纯手绘知识体系图、面试以及相关的学习笔记。为了更好的梳理相关知识,咱们先看纯手绘知识体系图1.1 Kafka知识体系大纲由于我手绘这些知识体系大纲是用的xmind软件原创 2020-11-04 15:10:22 · 237 阅读 · 12 评论 -
RabbitMQ+RocketMQ两手抓,阿里offer等我拿,学习笔记导图及真题
前言消息中间件是目前互联网项目应用特别广泛的一个中间件,主要用于处理异步操作,系统之间的应用解耦,以及并发下的流量削峰等等应用场景,今天开我们就进入消息中间件MQ的讲解,主流的MQ有很多,我们只需要掌握其中一到两种就可以了,基本都大同小异,OK,正式开始今天的MQ之旅。NO.1 RocketMQRocketMQ前身叫做MetaQ, 在MeataQ发布3.0版本的时候改名为RocketMQ,其本质上的设计思路和Kafka类似,但是和Kafka不同的是其使用Java进行开发,由于在国内的Java受众群原创 2020-07-21 17:33:46 · 279 阅读 · 0 评论 -
牛逼!高并发:RocketMQ 削峰实战来了!
MQ的主要特点为解耦、异步、削峰,该文章主要记录与分享个人在实际项目中的RocketMQ削峰用法,用于减少数据库压力的业务场景,其中RocketMQ的核心组件概念如下:Producer:生产发送消息Broker:存储Producer发送过来的消息Consumer:从Broker拉取消息并进行消费NameServer:为Producer或Consumer路由到Broker!其中消费流程有以下几点是必须注意的:RocketMQ的Consumer获取消息是通过向Broker发送拉取请求获取的,而不原创 2020-06-11 15:19:32 · 1051 阅读 · 1 评论 -
RocketMQ实战:生产环境中,autoCreateTopicEnable为什么不能设置为true
现象很多网友会问,为什么明明集群中有多台Broker服务器,autoCreateTopicEnable设置为true,表示开启Topic自动创建,但新创建的Topic的路由信息只包含在其中一台Broker服务器上,这是为什么呢?期望值:为了消息发送的高可用,希望新创建的Topic在集群中的每台Broker上创建对应的队列,避免Broker的单节点故障。现象截图如下:Broker集群信息topicTest5路由信息正如上图所示,自动创建的topicTest5的路由信息:topicTest5原创 2020-06-08 16:20:29 · 1070 阅读 · 0 评论 -
Kafka/RocketMQ 多线程消费时如何保证消费顺序?
之前在讨论顺序消息的一些知识,看到有个读者的留言如下:这个问题问得非常棒,由于在之前的文章中并没有提及到,因此我在这篇文章中单独讲解,本文将从消费顺序性这个问题出发,深度剖析 Kafka/RocketMQ 消费线程模型。Kafkakafka 的消费类 KafkaConsumer 是非线程安全的,因此用户无法在多线程中共享一个 KafkaConsumer 实例,且 KafkaConsumer 本身并没有实现多线程消费逻辑,如需多线程消费,还需要用户自行实现,在这里我会讲到 Kafka 两种多线程消费模原创 2020-05-18 17:49:17 · 4146 阅读 · 1 评论 -
RabbitMQ 死信机制真的可以作为延时任务这个场景的解决方案吗?
关于延时任务,在业务场景中实在是太常见了。比如订单,下单 xx 分钟未支付就要将订单关闭。比如红包, XX 分钟未抢,则红包失效。那么说起延时任务的实现方案的话,可能有很多人第一时间会想到轮询,即设置定时任务,而稍有经验的开发者就知道。轮询这机制会给数据库带来很大压力,小业务当然无所谓。如果是大量数据要处理的业务用轮询肯定是不行的。而且你如果要保证高可用,就又得牵扯出分布式定时任务。怎么搞都很麻烦。很多小机灵鬼知道可以用消息队列来实现。确实,MQ 的异步性和解耦性在延时任务的这种场景下可以爆发出很强的战原创 2020-05-15 11:40:32 · 230 阅读 · 0 评论