《RocketMQ实战与原理》专栏简介

简介

RocketMQ业界主流的消息中间件之一,承载公司核心业务消息的流转。对RocketMQ核心原理的理解与最佳实践成了开发与运维同学的必备技能。听很多同学抱怨,在学习中苦于缺少参考资料、遇到问题缺少专家指点、看源码掉入细节耗费大量时间精力、缺乏指引的最佳实践。

我们在使用RocketMQ发送时会碰到System busy、Broker busy,导致发送超时。发生这种现象的背后原理是怎样的?我们有什么解决方案?

一个消费组订阅多个Tag的情况,多个Tag用||分割,在同一个消费组中一个消费者订阅TagA,同一个消费组的另外一个消费者订阅了TagB。请问这么用有什么问题?背后的原理是什么?这种情况在咨询中问的同学很多。

RocketMQ的平稳运行离不开正确的调优、运维、监控、告警。对RocketMQ的治理我们应该从哪里入手?平滑扩所容的正确姿势是怎么样的?监控项的设计应该从哪些方面?

所有这些实战中可能碰到的坑,你都将从本专栏中找到原理讲解和正确使用方式。

专栏详情地址:https://blog.csdn.net/prestigeding/category_10520815.html

专栏亮点

1.作者团队瓷实

由《RocketMQ技术内幕》作者丁威老师执笔编写核心原理和设计思想,讲解通透严谨,核心知识点提供最佳实践代码。

由在消息领域实战多年的梁勇老师负责编写运维实战部分,手把手教你如何做集群压测、调优、平滑运维、监控、告警设计。

两位作者均通读熟悉RocketMQ核心源码、并在消息领域实战多年。

2.实战心得提炼

两位作者将多年的RocketMQ积累心得提炼总结,从原理到代码最佳实践全方位指引。提升学习效率、少走弯路、事半功倍。

3.图文并貌讲解

知识原理讲解采用图文并貌的方式,并将原理穿插道实战中,读者在轻松学习中获取知识,提升学习获得感、成就感。

4.高阶职位进阶

除了能掌握RocketMQ的知识外,你将对RocketMQ背后设计思想深入学习,RocketMQ治理体系的设计了然于胸。成为消息领域的技术专家。

读者将获得什么?

掌握RocketMQ核心原理与实践

掌握RocketMQ集群运维监控技能

掌握RocketMQ编程技巧与设计思想

目标读者

RocketMQ的初学者

JAVA中高级工程师

RocketMQ运维工程师

想成为消息领域技术专家的从业者

作者简介

丁威,《RocketMQ技术内幕》作者、RocketMQ社区优秀布道师、CSDN技术专家,『中间件兴趣圈』公众号维护者,现担任中通快递研发中心资深架构师。

梁勇,哈啰出行高级技术专家,负责服务框架&消息平台,参与了《RocketMQ技术内幕》审稿工作。专注后端中间件方向,在公众号『瓜农老梁』陆续发表80余篇。

作者照片

正面照,设计师将依此为作者设计卡通肖像。

专栏结构

专栏从使用场景入手介绍如何使用RocketMQ,使用过程中遇到什么问题,如何解决这些问题,以及为什么可以这样解决,即原理讲解(图)穿插在实战中。总共分为三个部分:应用篇、运维篇、编程进阶篇。

专栏的设计思路重在强调实战二字,旨在让一位RocketMQ初学者通过对本专栏的学习,快速“打怪升级”,理论与实战结合,成为该领域的佼佼者。专栏共分为应用篇、运维篇、编程技巧篇。

应用篇:介绍如何使用RocketMQ,使用过程中遇到什么问题,如何解决这些问题,以及为什么可以这样解决,即原理讲解(图)穿插在实战中。

运维篇:从运维角度,从对集群的管理方面角度切入,分享日均消息流转千亿级别的运维日常工作。

编程技巧篇:深入学习RocketMQ,不仅能在工作中更好的驾驭RocketMQ,作为一款高性能的分布式消息中间件,在编程方面有很多地方值得我们学习与借鉴,对快速提升编程能力有莫大的好处。

     

部分 文章 大纲
应用篇 1、搭建学习环境(准备篇) 1.1、Linux安装RocketMQ、RocketMQ-Console
1.2、IDEA中安装RocketMQ
2、RocketMQ核心概念扫盲篇 2.1、RocketMQ部署架构
2.2、消息订阅模型
2.3、事务消息
2.4、定时消息
2.5、消息过滤
3、消息发送API详解与版本变迁说明 3.1、消息发送API详解
3.2、消息发送API简单使用示例
3.3、消息发送API版本演变说明
4、结合实际应用场景谈消息发送 4.1、消息发送方式
4.2、队列选择机制
4.3、RocketMQ Key 的使用场景
4.4、RocketMQ tag 使用场景
4.5、RocketMQ msgId 详解
5、消息发送核心参数与工作原理详解 5.1、DefaultMQProducer参数一览
5.2、ClientConfig参数一览
5.3、核心参数工作机制与使用建议
6、消息发送常见错误与解决方案 6.1、No route info of this topic
6.2、消息发送超时
6.3、System busy、Broker busy
7、事务消息使用及方案选型思考 7.1、事务消息应用场景
7.2、RocketMQ事务消息原理
7.3、事务消息实战
7.4、事务消息架构思考
8、消息消费API与版本变迁说明 8.1、消息消费类图
8.2、消息消费API简单使用示例
8.3、消息消费API版本演变说明
9、DefaultMQPushConsumer核心参数与工作原理 9.1、DefaultMQPushConsumer核心参数一览与内部原理
9.2、消息消费队列负载算法
9.3、PUSH模型消息拉取机制
9.4、消息消费进度提交
10、DefaultMQPushConsumer使用示例与注意事项 10.1、ConsumeFromWhere注意事项
10.2、基于多机房队列负载算法
10.3、消费组线程数设置注意事项
10.4、批量消费注意事项
10.5、订阅关系不一致导致消息丢失
10.6、消费者clientId不唯一导致不消费
11、DefaultLitePullConsumer核心参数与实战 11.1、DefaultLitePullConsumer类图
11.2、DefaultLitePullConsumer简单使用示例
11.3、Lite Pull与PUSH模式之对比
11.4、长轮询实现原理
12、结合实际场景再聊DefaultLitePullConsumer的使用 12.1、场景描述图
12.2、PUSH与PULL模式选型
12.3、方案设计
12.4、代码实现与代码解读
13、结合实际场景顺序消费、消息过滤实战 13.1、顺序消费(场景描述、代码实现、原理解读)
13.2、消息过滤实战(场景描述、技术方案、代码实现)
14、消息消费积压问题排查实战 14.1、问题描述
14.2、问题分析与解决方案
14.3、线程栈分析经验
14.4、RocketMQ消费端限流机制
14.5、RocketMQ服务端性能自查技巧
运维篇 15、RocketMQ常用命令实战 15.1、集群命令汇总
15.2、主题命令汇总
15.3、消费组命令汇总
15.4、Broker命令汇总
15.5、消息命令汇总
16、RocketMQ集群性能摸高 16.1、前言
16.2、压测脚本
16.3、摸高实战
16.4、总结
17、RocketMQ集群性能调优 17.1、前言
17.2、系统参数调优
17.3、集群参数调优
18、RocketMQ集群平滑运维 18.1、前言
18.2、优雅摘除节点
18.3、平滑扩所容
19、RocketMQ集群监控(一) 19.1、前言
19.2、监控项设计
19.3、监控开发实战
20、RocketMQ集群监控(二) 20.1、前言
20.2、监控项设计
20.3、监控开发实战
21、RocketMQ集群告警 21.1、前言
21.2、告警项设计
21.3、告警实战开发
22、RocketMQ集群踩坑记 22.1、集群节点进程神秘消失
22.2、Master节点CPU莫名飙高
22.3、集群频繁抖动发送超时
22.4、用了此属性消费性能下降一半
23、消息轨迹、ACL与多副本搭建 23.1 消息轨迹
23.2 ACL
23.3 多副本搭建
24、RocketMQ-Console常用页面指标获取逻辑
编程技巧篇 25、RocketMQ NameServer背后的设计理念 25.1 Nameserver工作机制
25.2 两种设计注册中心的思路
25.3 Nameserver数据不一致影响分析
26、JAVA并发编程实战 26.1 读写锁的使用场景
26.2 信号量使用技巧
26.3 同步转异步编程技巧
26.4 CompletableFuture编程技巧
27、从 RocketMQ学基于文件的编程模式(一) 27.1 消息存储格式看文件编程
27.2 内存映射与页缓存
27.3 顺序写
27.4 引用计数器
28、从 RocketMQ学基于文件的编程模式(二) 28.1 同步刷盘、异步刷盘
28.2 文件恢复机制
28.3 Java如何使用零拷贝
29、从RocketMQ学Netty网络编程技巧 29.1 从整个类体系看网络设计
29.2 Netty 网络编程要点
29.3 线程隔离机制
30、RocketMQ学习方法之我见

扫帚不到,灰尘不会自己跑掉

没弄懂的知识,我们不去学它,使用时还是不知其所以然。这正如地上的灰尘,扫帚不到,灰尘是不会自己跑掉的。

在长期的咨询过程发现一个现象,一个知识点,应届毕业生有问、工作3、4年的工程师在问、工作10年以上的专家也有在问。例如:广播消费和集群消费有什么区别?一个消费组订阅多个Tag的情况,多个Tag用||分割,在同一个消费组中一个消费者订阅TagA,同一个消费组的另外一个消费者订阅了TagB,为什么只能收到一部分消息?RocketMQ和Kafka有什么区别?类似的问题会一直重复下去,周而复始直到你把它研究了、学习了、搞明白为止。

我们应该学什么?

如果发散开来要学的东西太多了,感觉怎么学也学不完。所以要事为先,先学工作中绕不开的知识,RocketMQ如果在你公司中有使用或者既将使用,作为一个公司核心业务流转的基础设施组件,RocketMQ是绕不开的。业务开发使用、测试使用、运维同学也在使用。

我们应该怎么学?

自己关起门来搞研究,一个是精力有限,另一个是缺少实战环境验证,学习效率也较低。像国家要引进西方发达国家先进技术、派遣留学生一样,如果能从别人踩过的坑、实战的总结中学习吸收,在实践中小心求证,发展成为自己的知识体系,不愧为一个高效的学习路径。瓷实的作者团队相信能给你一个很高的起点。

唯有坚持不懈!

在面试中我们看到一个现象,有的同学985学校毕业,有一个很好的起点和光环,工作多年后发现技术没有亮点、行业深度也缺少积累;有的同学毕业普通二本甚至专科学校,工作多年后,在其身上却发现了某个技术领域研究很深或者行业知识研究很深。这种现象究其原因是在常年累月的工作中是否能坚持学习,就像丁威老师的座右铭一样唯有坚持不懈,持续不断学习、久久为功才是不断提升自己的终极法宝。

《RocketMQ实战专栏》为什么是你学习RocketMQ的最佳资料相关推荐

  1. 学习Git的最佳资料

    1. ProGit中文版: https://git-scm.com/book/zh/v2 2. 廖雪峰的Git教程: http://www.liaoxuefeng.com/wiki/001373951 ...

  2. RocketMQ实战(四)

    前言 这将是RocketMQ实战系列的最后一篇文章,该系列的文章列表如下: <RocketMQ实战(一)> <RocketMQ实战(二)> <RocketMQ实战(三): ...

  3. RocketMQ实战系列-RocketMQ命令详解

    导语   之前分析了关于RocketMQ源码的东西,接下来的阶段就是进入到实战的相关系列操作中,在这个系列中也会继续从源码的角度入手,深入的分析,在RocketMQ中的编程思想.下面就来介绍一下在Ro ...

  4. RocketMQ实战与原理解析

    网站 更多书籍点击进入>> CiCi岛 下载 电子版仅供预览及学习交流使用,下载后请24小时内删除,支持正版,喜欢的请购买正版书籍 电子书下载(皮皮云盘-点击"普通下载" ...

  5. RocketMQ实战--大数据平台技术栈06

    回顾:大数据平台技术栈 (ps:可点击查看),今天就来说说其中的RocketMQ! 作者丨张丰哲 www.jianshu.com/p/3afd610a8f7d 阿里巴巴有2大核心的分布式技术,一个是O ...

  6. RocketMQ 实战 集群监控平台搭建

    RocketMQ 实战 集群监控平台搭建 概述 RocketMQ有一个对其扩展的开源项目incubator-rocketmq-externals,这个项目中有一个子模块叫rocketmq-consol ...

  7. RocketMQ实战与原理---安装、部署及简单应用

    RocketMQ实战与原理 第一章  安装.部署及简单应用 1. 安装 1.1 下载RocketMQ 2. 部署 2.1 部署nameserver 2.2 部署broker 2.3 新增Topic 3 ...

  8. RocketMQ实战(一)

    阿里巴巴有2大核心的分布式技术,一个是OceanBase,另一个就是RocketMQ.在实际项目中已经领教过RocketMQ的强大,本人计划写一个RocketMQ实战系列,将涵盖RocketMQ的简介 ...

  9. rocketmq 实战问题汇总

    rocketmq 实战过程会遇到这样或者那样的问题,今天我们专门抽出一篇文章来分析一下汇总一下,避免以后踩同样的坑: 1.找不到JDK的问题: 综合分析,是因为JDK安装的目录有空格导致的:Progr ...

最新文章

  1. 柏拉图-理想国(西方哲学的源头)-教你如何思考人生 思考世界 思考社会
  2. Oracle RAC错误之--oifcfg错误案例
  3. Sql server 2005系统表详细说明
  4. 机器学习中为啥要有验证集?只要训练集和测试集不就可以了吗?
  5. 学长毕业日记 :本科毕业论文写成博士论文的神操作20170314
  6. python---之打印日志logging
  7. ElasticSearch搜索引擎安装配置拼音插件pinyin
  8. 双11你玩AR捉猫猫游戏了吗?来看看游戏背后的项目实战经验吧
  9. Shell脚本字符串截取方法总结
  10. ext中引用ux_Extjs Ext.ux.IFrame的用法 以及父子窗口间函数相互调用
  11. 《天勤数据结构》笔记——假溢出和循环队列基本操作的实现(C/C++)
  12. Opencv_07 图像的像素值统计
  13. 用java输入学生姓名查询成绩_java实现学生成绩录入系统
  14. SAP中由生产版本有误导致的生产报工时提示“错误确定成本核算”问题实例
  15. 原生JavaScript实现连连看游戏
  16. linux pthread_attr_destory()
  17. axios(尚硅谷)
  18. 大一计算机论文_大一计算机论文
  19. Excel 2010 VBA 入门 086 数据处理之获取交叉查询结果表
  20. 《Xmind 用好思维导图走上开挂人生》记录

热门文章

  1. 湘南学院第一届程序设计大赛题解(XNPC—2022)
  2. IDEA 启动找不到或无法加载主类两种解决办法
  3. 京东阿里IPO大战硝烟四起 投资人挑花眼
  4. iphone11信号强度测试软件,至少比上代信号好:iPhone 11 系列天线实验室测试结果出炉...
  5. 使用React Native编写的一款阅读类app ———《轻松一刻》
  6. W78 - 999、大数据分析师认证
  7. 俄美共同研制出新型钙钛矿太阳能电池
  8. SketchUp学习笔记
  9. app架构图,330页PDF,10万字的知识点总结,全网独家首发!
  10. matlab降噪工具箱,分形降噪处理的小波分析matlab工具箱教程