课程介绍
极客时间消息队列高手课,由整理发布。本课将从源码的角度带你了解消息队列,让你具备从源码角度分析和解决实际业务问题的能力,并且借由消息队列的底层技术,带你了解其优秀的设计思想,理解各种“轮子”的实现原理,提升你的编程能力。
本课程有 3 大模块。
基础篇,以讲解消息队列的使用方法和最佳实践为主,包括消息队列基础知识、技术选型、高级功能等,给出消息队列应用过程中常见问题的解决策略。
进阶篇,深入到源码中去,探讨消息队列的实现原理,拓展知识深度。在这个模块的前半部分,每篇对异步模型、高性能的底层网络通信等知识点进行探讨,这些知识点不仅是中间件开发人员必须掌握的,而且是各大厂面试题中的常考内容。后半部分每篇会选择一个开源的消息队列,针对一个功能特性,讲解它的实现原理,以及源代码中优秀的设计思想和好的编程技巧。
案例篇,应用前两个模块学到的知识,一起做两个微型项目,体验实际的代码开发。第一个微项目,用消息队列和流计算框架来实现一个流计算任务;第二个微项目,实现一个最简单的 RPC 框架,因为开发中间件用到的很多技术都是互通的,开发消息队列的技术同样可以用于开发 RPC 框架。
资源目录
[ 31M] 01-为什么需要消息队列?.mp3
[2.9M] 01-为什么需要消息队列?.pdf
[ 12K] 02-该如何选择消息队列?.md
[ 13M] 02-该如何选择消息队列?.mp3
[796K] 02-该如何选择消息队列?.pdf
[ 24M] 03-消息模型:主题和队列有什么区别?.mp3
[4.1M] 03-消息模型:主题和队列有什么区别?.pdf
[ 23M] 04-如何利用事务消息实现分布式事务?.mp3
[2.7M] 04-如何利用事务消息实现分布式事务?.pdf
[ 28M] 05-如何确保消息不会丢失.mp3
[2.7M] 05-如何确保消息不会丢失.pdf
[ 12K] 06-如何处理消费过程中的重复消息?.md
[ 13M] 06-如何处理消费过程中的重复消息?.mp3
[2.3M] 06-如何处理消费过程中的重复消息?.pdf
[ 25M] 07-消息积压了该如何处理?.mp3
[2.5M] 07-消息积压了该如何处理?.pdf
[ 24M] 08-答疑解惑(一)-网关如何接收服务端的秒杀结果?.mp3
[5.1M] 08-答疑解惑(一)-网关如何接收服务端的秒杀结果?.pdf
[ 11K] 09-学习开源代码该如何入手?.md
[ 13M] 09-学习开源代码该如何入手?.mp3
[2.0M] 09-学习开源代码该如何入手?.pdf
[ 23M] 10-如何使用异步设计提升系统性能?.mp3
[2.4M] 10-如何使用异步设计提升系统性能?.pdf
[ 24M] 11-如何实现高性能的异步网络传输?.mp3
[4.6M] 11-如何实现高性能的异步网络传输?.pdf
[9.5K] 12-序列化与反序列化:如何通过网络传输结构化的数据?.md
[ 12M] 12-序列化与反序列化:如何通过网络传输结构化的数据?.mp3
[1.8M] 12-序列化与反序列化:如何通过网络传输结构化的数据?.pdf
[ 25M] 13-传输协议:应用程序之间对话的语言.mp3
[2.9M] 13-传输协议:应用程序之间对话的语言.pdf
[10.0K] 14-内存管理:如何避免内存溢出和频繁的垃圾回收?.md
[ 14M] 14-内存管理:如何避免内存溢出和频繁的垃圾回收?.mp3
[1.3M] 14-内存管理:如何避免内存溢出和频繁的垃圾回收?.pdf
[ 10K] 15-Kafka如何实现高性能IO?.md
[ 11M] 15-Kafka如何实现高性能IO?.mp3
[1.8M] 15-Kafka如何实现高性能IO?.pdf
[ 15K] 16-缓存策略:如何使用缓存来减少磁盘IO?.md
[ 11M] 16-缓存策略:如何使用缓存来减少磁盘IO?.mp3
[1.8M] 16-缓存策略:如何使用缓存来减少磁盘IO?.pdf
[ 26M] 17-如何正确使用锁保护共享数据,协调异步线程?.mp3
[2.1M] 17-如何正确使用锁保护共享数据,协调异步线程?.pdf
[ 11K] 18-如何用硬件同步原语(CAS)替代锁?.md
[ 14M] 18-如何用硬件同步原语(CAS)替代锁?.mp3
[1.4M] 18-如何用硬件同步原语(CAS)替代锁?.pdf
[ 10K] 19-数据压缩:时间换空间的游戏.md
[ 14M] 19-数据压缩:时间换空间的游戏.mp3
[861K] 19-数据压缩:时间换空间的游戏.pdf
[ 26M] 20-RocketMQProducer源码分析:消息生产的实现过程.mp3
[2.1M] 20-RocketMQProducer源码分析:消息生产的实现过程.pdf
[ 26M] 21-KafkaConsumer源码分析:消息消费的实现过程.mp3
[1.6M] 21-KafkaConsumer源码分析:消息消费的实现过程.pdf
[ 12K] 22-Kafka和RocketMQ的消息复制实现的差异点在哪?.md
[ 13M] 22-Kafka和RocketMQ的消息复制实现的差异点在哪?.mp3
[1.2M] 22-Kafka和RocketMQ的消息复制实现的差异点在哪?.pdf
[ 19M] 23-RocketMQ客户端如何在集群中找到正确的节点?.mp3
[2.0M] 23-RocketMQ客户端如何在集群中找到正确的节点?.pdf
[ 12M] 24-Kafka的协调服务ZooKeeper:实现分布式系统的“瑞士军刀”.mp3
[1.7M] 24-Kafka的协调服务ZooKeeper:实现分布式系统的“瑞士军刀”.pdf
[ 14M] 25-RocketMQ与Kafka中如何实现事务?.mp3
[1.1M] 25-RocketMQ与Kafka中如何实现事务?.pdf
[ 12M] 26-MQTT协议:如何支持海量的在线IoT设备.mp3
[2.7M] 26-MQTT协议:如何支持海量的在线IoT设备.pdf
[ 14M] 27-Pulsar的存储计算分离设计:全新的消息队列设计思路.mp3
[2.1M] 27-Pulsar的存储计算分离设计:全新的消息队列设计思路.pdf
[ 11K] 28-答疑解惑(二):我的100元哪儿去了?.md
[ 11M] 28-答疑解惑(二):我的100元哪儿去了?.mp3
[1.0M] 28-答疑解惑(二):我的100元哪儿去了?.pdf
[ 13M] 29-流计算与消息(一):通过Flink理解流计算的原理.mp3
[1.9M] 29-流计算与消息(一):通过Flink理解流计算的原理.pdf
[ 12M] 30-流计算与消息(二):在流计算中使用Kafka链接计算任务.mp3
[1.8M] 30-流计算与消息(二):在流计算中使用Kafka链接计算任务.pdf
[ 14M] 31-动手实现一个简单的RPC框架(一):原理和程序的结构.mp3
[2.5M] 31-动手实现一个简单的RPC框架(一):原理和程序的结构.pdf
[ 19K] 32-动手实现一个简单的RPC框架(二):通信与序列化.md
[ 16M] 32-动手实现一个简单的RPC框架(二):通信与序列化.mp3
[1.5M] 32-动手实现一个简单的RPC框架(二):通信与序列化.pdf
[ 12M] 33-动手实现一个简单的RPC框架(三):客户端.mp3
[2.1M] 33-动手实现一个简单的RPC框架(三):客户端.pdf
[ 14K] 34-动手实现一个简单的RPC框架(四):服务端.md
[ 14M] 34-动手实现一个简单的RPC框架(四):服务端.mp3
[1.7M] 34-动手实现一个简单的RPC框架(四):服务端.pdf
[ 12M] 35-答疑解惑(三):主流消息队列都是如何存储消息的?.mp3
[2.1M] 35-答疑解惑(三):主流消息队列都是如何存储消息的?.pdf
[ 23M] 加餐-JMQ的Broker是如何异步处理消息的?.mp3
[2.5M] 加餐-JMQ的Broker是如何异步处理消息的?.pdf
[ 41M] 开篇词-优秀的程序员,你的技术栈中不能只有“增删改查”.mp3
[2.6M] 开篇词-优秀的程序员,你的技术栈中不能只有“增删改查”.pdf
[1.4M] 期中测试丨10个消息队列热点问题自测.mp3
[1.8M] 期中测试丨10个消息队列热点问题自测.pdf
[893K] 期末测试-消息队列100分试卷等你来挑战!.mp3
[684K] 期末测试-消息队列100分试卷等你来挑战!.pdf
[1.8K] 第二季回归丨这次我们一起实战后端存储.md
[1.6M] 第二季回归丨这次我们一起实战后端存储.mp3
[1.6M] 第二季回归丨这次我们一起实战后端存储.pdf
[9.8M] 结束语-程序员如何构建知识体系?.mp3
[4.5M] 结束语-程序员如何构建知识体系?.pdf
[ 44M] 预习-怎样更好地学习这门课?.mp3
[1.5M] 预习-怎样更好地学习这门课?.pdf
评论0