你将获得
- 40+ MQ 开发核心必备知识点
- 4 款主流 MQ 技术共性总结
- 极简代码体验 MQ 功能设计思路
- 以 Pulsar 为代表的最新 MQ 探索
课程介绍
中间件作为三大基础软件之一,消息队列是其重要的组成部分。
早年,业界消息队列演进的主要推动力在于功能、场景、分布式集群的支持等等。近几年,随着云原生架构和 Serverless 的普及,业界 MQ 主要向实时消息和流消息的融合架构、Serverless、Event、协议兼容等方面演进。从而实现计算、存储的弹性,实现集群的 Serverless 化。
业务场景越来越复杂,业务消息的数据量也越来越大,这进一步加剧了技术选型的难度以及 MQ 调优的难度。但通过拆解经典消息队列,你会深刻体会到什么叫“发展的本质是联系”。
从架构设计角度来看,消息队列在演进过程中本就存在相互借鉴,这也给我们学习消息队列提供了一个便捷的路径。许文强老师将结合自己的多年积累,带着你探索这条路径,一起从需求出发,深入 MQ 设计原理,对比主流技术方案,思考选型重点,极简代码辅助,最终你学习任意一款消息队列将会变得非常简单,在实际产线中也将运用自如。
课程设计
本课程共包含六个模块。
预习篇:了解主流 MQ 的发展脉络,从中明确未来发展方向,并就后续课程频繁提及的基础概念做一个对齐。
基础篇:围绕通信协议、网络模块、存储模块、生产者、消费者等五个部分,分析一个最基础的消息队列应该考虑什么,如何选型以及如何设计实现。最后还会围绕着这五个部分分析 4 款主流消息队列的设计实现。
进阶篇:在最基础的消息队列之上,从集群瓶颈和可靠性风险分析、如何构建集群、如何确保数据一致性、集群的安全控制、集群的可观测性、编码技巧、集群优化等七个方面,来分析实现一个分布式的消息队列集群应该考虑什么、怎么做,有哪些方案以及各种方案的优劣。最后还是会围绕着这七个方面分析 4 款主流消息队列的设计实现。
功能篇:在集群化的消息队列的基础上,探讨在集群上如何实现顺序消息、幂等消息、延时消息、事务消息、死信队列、优先级队列、消息查询、支持 Schema、支持 WebSocket 等功能。详细分析实现这些功能要考虑什么,如何做方案设计、技术选型,以及怎样实现这些功能。
架构升级篇:前面四个模块已经实现了一个集群化、功能丰富的消息队列。接下来重点探讨在云原生架构演进、降本增效诉求增大、Serverless/Event 概念兴起等背景下,消息队列是如何跟进业界最新设计理念,做架构升级以满足系统弹性和降本诉求的。本模块将从存算分离架构、分层存储、Severless/Event 架构、集群容灾、数据连接、消息中台等六个方面来展开讲解技术上如何实现、如何考虑、能达到什么效果、有哪些风险、能满足哪些场景等等。
经验总结篇:基于讲师多年观察所产出的分享,从多个视角输出,赋能业务和产品,也为你自身赋能。
课程目录
适合人群
- 初中级后端开发人员。在工作中对一款或多款消息队列有使用经验,想进一步系统学习消息队列的开发者。
- 产品经理、售前架构师。对消息队列的概念、架构设计理念没有全貌了解的同学具有参考价值。