![](https://img-blog.csdnimg.cn/20210831222228131.jpeg?x-oss-process=image/resize,m_fixed,h_224,w_224)
[TL4]分布式框架专题-RocketMQ
文章平均质量分 92
[TL4]分布式框架专题-RocketMQ
萧 炎
这个作者很懒,什么都没留下…
展开
-
RocketMQ实践问题与线上问题总结 & 保证消息不丢失 & 保证消息顺序 &快速处理积压消息 & 消息轨迹
一、使用RocketMQ如何保证消息不丢失?1 哪些环节会有丢消息的可能?这个是在面试时,关于MQ,面试官最喜欢问的问题。这个问题是所有MQ都需要面对的一个共性问题。大致的解决思路都是一致的,但是针对不同的MQ产品又有不同的解决方案。分析这个问题要从以下几个角度入手:其中,1,2,4三个场景都是跨网络的,而跨网络就肯定会有丢消息的可能。然后关于3这个环节,通常MQ存盘时都会先写入操作系统的缓存page cache中,然后再由操作系统异步的将消息写入硬盘。这个中间有个时间差,就可能会造成消息丢失。如原创 2021-08-30 07:19:01 · 758 阅读 · 0 评论 -
RocketMQ源码构建和重点解读
文章目录一、源码环境搭建1 源码拉取2 源码调试2.1 启动NameServer2.2 启动Broker2.3 发送消息2.4 消费消息2.5 如何看源码一、源码环境搭建1 源码拉取RocketMQ的官方Git仓库地址:https://github.com/apache/rocketmq 可以用git把项目clone下来或者直接下载代码包。也可以到RocketMQ的官方网站上下载指定版本的源码: http://rocketmq.apache.org/dowloading/releases/下载原创 2021-08-29 09:37:43 · 442 阅读 · 0 评论 -
RocketMQ高级原理整理与理解
文章目录一、基础概念1 消息模型(Message Model)2 消息生产者(Producer)3 消息消费者(Consumer)4 主题(Topic)5 代理服务器(Broker Server)6 名字服务(Name Server)7 消息(Message)二、消息存储1、何时存储消息2、消息存储介质2.1 磁盘保存文件慢吗?2.2 零拷贝技术加速文件读写3 消息存储结构4 刷盘机制一、基础概念1 消息模型(Message Model)RocketMQ主要由 Producer、Broker、Cons原创 2021-08-26 09:00:34 · 519 阅读 · 0 评论 -
SpringCloudStream整合RocketMQ
SpringCloudStream是Spring社区提供的一个统一的消息驱动框架,目的是想要以一个统一的编程模型来对接所有的MQ消息中间件产品。我们还是来看看SpringCloudStream如何来集成RocketMQ。快速实战1、创建Maven工程,引入依赖<dependencies> <dependency> <groupId>org.apache.rocketmq</groupId> <artifactId>rock原创 2021-08-26 07:44:03 · 1224 阅读 · 0 评论 -
SpringBoot整合RocketMQ
一、快速实战在使用SpringBoot的starter集成包时,要特别注意版本。因为SpringBoot集成RocketMQ的starter依赖是由Spring社区提供的,目前正在快速迭代的过程当中,不同版本之间的差距非常大,甚至基础的底层对象都会经常有改动。例如如果使用rocketmq-spring-boot-starter:2.0.4版本开发的代码,升级到目前最新的rocketmq-spring-boot-starter:2.1.1后,基本就用不了了。1、maven依赖: <depende原创 2021-08-25 08:00:50 · 27592 阅读 · 2 评论 -
RocketMQ之ACL权限控制 & 源码文档解读 & 消息轨迹介绍
一、ACL介绍权限控制(ACL)主要为RocketMQ提供Topic资源级别的用户访问控制。用户在使用RocketMQ权限控制时,可以在Client客户端通过 RPCHook注入AccessKey和SecretKey签名;同时,将对应的权限控制属性(包括Topic访问权限、IP白名单和AccessKey和SecretKey签名等)设置在$ROCKETMQ_HOME/conf/plain_acl.yml的配置文件中。Broker端对AccessKey所拥有的权限进行校验,校验不过,抛出异常;ACL客户原创 2021-08-25 06:47:47 · 1419 阅读 · 0 评论 -
新版本RocketMQ配置Web管理界面:解决找不到rocketmq-console目录问题
1、无法配置原因分析想配置一下RocketMQ的web管理页面,发现网上的资料都是之前版本的说明,导致无法成功配置。所以想自己查看一下。我们发现https://github.com/apache/rocketmq-externals这个git项目上并没有找到rocketmq-console这个目录:然后我们继续往下找,发现这样一段话:什么意思呢,也就是说之前的rocket-console已经不在这个仓库了,已经创建了一个独立的仓库并命名为RocketMQ Dashboard。我们进入到这个d原创 2021-08-17 08:59:24 · 9986 阅读 · 30 评论 -
RocketMQ原生API使用 & 6种模式消息实战demo
一、RocketMQ原生API使用使用RocketMQ的原生API开发是最简单也是目前看来最牢靠的方式。这里我们用SpringBoot来搭建一系列消息生产者和消息消费者,来访问我们之前搭建的RocketMQ集群。1、测试环境搭建首先创建一个基于Maven的SpringBoot工程,引入如下依赖: <dependencies> <dependency> <groupId>org.apache.rocketmq</gro原创 2021-08-15 10:32:49 · 696 阅读 · 0 评论 -
RocketMQ整体理解与快速入门
一、MQ介绍1、什么是MQ?为什么要用MQMQ:MessageQueue,消息队列。 队列,是一种FIFO 先进先出的数据结构。消息由生产者发送到MQ进行排队,然后按原来的顺序交由消息的消费者进行处理。QQ和微信就是典型的MQ。MQ的作用主要有以下三个方面:异步例子:快递员发快递,直接到客户家效率会很低。引入菜鸟驿站后,快递员只需要把快递放到菜鸟驿站,就可以继续发其他快递去了。客户再按自己的时间安排去菜鸟驿站取快递。作用:异步能提高系统的响应速度、吞吐量。解耦例子:《Thinking in原创 2021-08-10 09:01:43 · 855 阅读 · 0 评论