阿里中间件团队内部不传手册:分布式中间件核心原理最佳实践笔记

什么是分布式消息中间件?

对于分布式消息中间件,首先要了解两个基础的概念,即什么是分布式系统,什么又是中间件。

分布式系统

“A distributed system is one in which components located at networked computers communicate and coordinate their actions only by passing messasges.”——《Distributed Systems Concepts and Design》

从上面这个解释可以得到分布式系统的两个特点:

组件分布在网络计算机上

组件之间通过消息来协调行动

中间件

Middleware is computer software that provides services to software applications beyond those available from the operating system. It can be described as “software glue”. Middleware makes it easier for software developers to implement communication and input/output, so they can focus on the specific purpose of their application.——维基百科

中间件被描述为为应用程序提供操作系统所提供的服务之外的服务,简化应用程序的通信、输入输出的开发,使他们专注于自己的业务逻辑。

从维基百科上对中间件的解释感觉有点绕,其实可以从“空间”的角度去理解中间件,即中间件是处于“中间层”的组件,是上层的应用程序和底层的服务之间的桥梁(比如DB中间件的上层是应用程序,底层是DB服务),也是应用与应用之间的桥梁(比如分布式服务组件)。

那么今天小编就给大家带来一本关于分布式消息中间件核心知识详解的书籍:

《分布式消息中间件核心原理与最佳实践》 话不多说,展示!

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-n1gaMSEM-1613635678319)(//upload-images.jianshu.io/upload_images/6168356-89f4ba1575152198?imageMogr2/auto-orient/strip|imageView2/2/w/1049/format/webp)]

本书总共九章,分为五部分,第一部分讲解消息队列入门和RocketMQ生产、消费原理与最佳实践;第二部分从整体角度讲解RocketMQ架构;第三部分讲解RocketMQ各个组件的基本原理;第四部分深入RocketMQ,讲解如何阅读源代码、如何进行企业实践;第五部分是附录,包含Namesrv、Broker的核心参数配置说明和Exporter监控指标注释。

第一章:RoketMQ综述

1.1什么是消息队列

1.2为什么需要消息队列

1.3常见消息队列

1.4RocketMQ的发展史与未来

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-tZFWafo5-1613635678319)(//upload-images.jianshu.io/upload_images/6168356-b134490a56e39180?imageMogr2/auto-orient/strip|imageView2/2/w/1200/format/webp)]

第二章:RocketMQ的生产者原理和最佳实践

2.1生产者原理

2.2生产者启动流程

2.3消息发送流程

2.4发送消息最佳实践

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-c535xYH0-1613635678320)(//upload-images.jianshu.io/upload_images/6168356-7aaeabee8917604e?imageMogr2/auto-orient/strip|imageView2/2/w/1200/format/webp)]

第三章:RocketMQ的消费流程和最佳实践

3.1消费者概述

3.2消费者启动机制

3.3消费者的Rebalance机制

3.4消费进度保存机制

3.5消费方式

3.6消息过滤

3.7消费者最佳实践总结

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-lXY07y4Q-1613635678320)(//upload-images.jianshu.io/upload_images/6168356-4fb2d76f3e8d93d3?imageMogr2/auto-orient/strip|imageView2/2/w/1200/format/webp)]

第四章 :RocketMQ架构和部署最佳实践

4.1 RocketMQ架构

4.2常用的部署拓扑和部署实践

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-eI3ArfOe-1613635678321)(//upload-images.jianshu.io/upload_images/6168356-5e79c5f4e753465b?imageMogr2/auto-orient/strip|imageView2/2/w/1200/format/webp)]

第五章:Namesrv

5.1 Namesrv概述

5.2 Namesrv架构

5.3 RocketMQ的路由原理

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-HysRH0bt-1613635678321)(//upload-images.jianshu.io/upload_images/6168356-a94ecdc998876b45?imageMogr2/auto-orient/strip|imageView2/2/w/1200/format/webp)]

第六章:Broker存储机制

6.1 Broker概述

6.2 Broker存储机制

6.3 Broker CommitLog索引机制

6.4 Broker过期文件删除机制

6.5 Broker主从同步机制

6.6 Broker的关机恢复机制

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-x0mfhpqt-1613635678322)(//upload-images.jianshu.io/upload_images/6168356-6abb6d77a9908529?imageMogr2/auto-orient/strip|imageView2/2/w/1200/format/webp)]

第七章:RocketMQ特性——事务消息与延迟消息机制

7.1事务消息概述

7.2事务消息机制

7.3延迟消息概述

7.4延迟消息机制

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-saJX2Wir-1613635678323)(//upload-images.jianshu.io/upload_images/6168356-5edac830249575f2?imageMogr2/auto-orient/strip|imageView2/2/w/1200/format/webp)]

第八章:RocketMQ源代码阅读

8.1 RocketMQ源代码结构概述

8.2 RocketMQ源代码编译

8.3如何阅读源代码

8.4源代码阅读范例:通过消息id查询消息

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-3bsuvrwg-1613635678323)(//upload-images.jianshu.io/upload_images/6168356-f7cbd23ff0ae9030?imageMogr2/auto-orient/strip|imageView2/2/w/1200/format/webp)]

第九章:RocketMQ企业最佳实践

9.1 RocketMQ落地概述

9.2 RocketMQ集群管理

9.3 RocketMQ集群监控和报警

9.4 RocketMQ集群迁移

9.5 RocketMQ测试环境实践

9.6 RocketMQ接入实践

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Rc1bRinM-1613635678324)(//upload-images.jianshu.io/upload_images/6168356-5504229a1480da16?imageMogr2/auto-orient/strip|imageView2/2/w/1200/format/webp)]

最后的总结

本书源码以RocketMQ 4.2.0 和 RocketMQ 4.3.0 为基础 , 从RocketMQ的实际使用到RocketMQ的源码分析,再到RocketMQ企业落地实践方案,逐步讲解。使读者由浅入深地了解RocketMQ。

希望读者在平时的工作中能熟悉、借鉴、参考RocketMQ的优秀设计理念,在技术能力上更进一步,在工作中更好地服务公司。

怎样获取?

还是老样子以上资料免费分享的呢!

需要获取的话直接点赞+关注后资料点击这里获取

猜你喜欢

转载自blog.csdn.net/lyl5454/article/details/113848435