1024 程序员节,圆一个小小的梦

Hope is a good thing, maybe the best of things, and no good thing ever dies.

希望是件美丽的东西,也许是最好的东西,而美好的东西是永远不会消逝的。

大家好,我是勇哥 。

1024 , 程序员节,圆了我一个小小的梦。

花了半年时间,我写了一本电子书 ,书名是:《RocketMQ4.X设计精要》,我想在今天分享给各位。

这本书一共包含十五章,接近 10 万字,180 张图,按照 RocketMQ 的知识体系一章一章展开。

很多年前,一位七牛的资深架构师曾经说过这样一句话:

Nginx+ 业务逻辑层 + 数据库 + 缓存层 + 消息队列 ,这种模型几乎能适配绝大部分的业务场景 。

这么多年过去了,这句话或深或浅地影响了我的技术选择,以至于后来我花了很多时间去重点学习缓存、消息队列相关的技术。

2014年,是我和 RocketMQ 结缘的一年。

我那时服务于艺龙旅行网,深感自己能力的欠缺,我非常想学习消息队列的知识,但当时互联网上开源的消息队列并不能让我满意。

读了子柳老师的《淘宝技术这十年》后,我搜罗了很多淘宝消息队列的资料,我知道MetaQ 的版本已经升级 MetaQ 3.0,只是开源版本还没有放出来。

2014 年秋 ,当 RocketMQ 开源出来之后 ,我兴奋异常,迫不及待的一睹其风采,至今我都能记得当时内心的雀跃。

我想学网络编程,RocketMQ 的通讯模块 remoting 底层也是 Netty 写的。我学习切入点是 RocketMQ 的通讯模块。

首先我模仿 RocketMQ 的通讯模块写了一个玩具的rpc,在 IDEA 中丝滑打印生产者/消费者的日志,感觉自己充满了能量。

不久之后,艺龙举办技术创新活动,我想想,要不尝试一下用 Netty 改写下 Cobar 的通讯模块。

于是参考 Cobar 的源码花了两周写了个 netty 版的 proxy,其实非常粗糙,很多功能不完善。只是没有想到,活动颁给我一个鼓励奖,现在想想既有趣又有点激励。

这就是我学习 RocketMQ 的起点,一个非常美好的起点。

在接下来的职业生涯中 ,我不断在业务中使用 RocketMQ :

  1. 直播答题:RocketMQ 广播模式推送题目 ;
  2. 参考阿里云 ONS 封装 RocketMQ 框架 ;
  3. 使用 RocketMQ 通讯框架实现任务调度系统 ;
  4. 使用 RocketMQ 作为短信平台的基座 ;
  5. 重构 RocketMQ 控制台支持多集群 。

通过 RocketMQ ,我学习到了很多的编程知识,比如多线程技巧、网络编程 、文件存储,同时面对各种技术问题处理起来也更加从容和自信。

缓存、分库分表、消息队列是高并发解决方案三剑客,是架构师必须掌握的知识点。

我写这本电子书,是想帮助后端工程师快速掌握 RocketMQ 的相关知识点,提升他们的技术认知。

假如朋友们能通过这本电子书,快速成长,那将是一件令我非常快乐的事情。

因为我自己的能力有限,书中肯定存在纰漏和错误之处,欢迎沟通指正,非常感谢 :)

搜索gzh「勇哥java实战分享」关注后,在后台回复「mq」即可获取《RocketMQ 4.X 设计精要》pdf 。

相关推荐
程序员cxuan30 分钟前
跟 WebUI 说再见了,最强 DeepSeek 桌面端来了!
人工智能·后端·程序员
geovindu36 分钟前
CSharp: Strategy Pattern
开发语言·后端·c#·.net·.netcore·策略模式·行为模式
stark张宇40 分钟前
从 Paxos 到 Raft:一文讲透分布式一致性与复制状态机
分布式·后端
RsThe41 分钟前
Spring AI 2.0:Java AI 开发的分水岭
后端
n8n1 小时前
Spring AI 工具调用实战:模型自主决策、@Tool 方法封装与 ReAct 模式
后端
只爱喝胡辣汤1 小时前
05-JVM 监控与故障排查工具
后端
geovindu1 小时前
CSharp: Task Scheduler
开发语言·后端·c#·.net·.netcore
Zane19942 小时前
两个线程算两遍循环,为什么只快了一点点不是两倍?GIL连环追问
后端·python
只爱喝胡辣汤2 小时前
04-JVM 性能调优参数
后端
Bs_MoneyMagnet2 小时前
基于springboot+vue的家居生活商城平台的设计与实现 源码+文档
java·vue.js·spring boot·后端·spring