消息队列高手课¶
- 00 预习 怎样更好地学习这门课?
- 01 为什么需要消息队列?
- 02 该如何选择消息队列?
- 03 消息模型:主题和队列有什么区别?
- 04 如何利用事务消息实现分布式事务?
- 05 如何确保消息不会丢失
- 06 如何处理消费过程中的重复消息?
- 07 消息积压了该如何处理?
- 08 答疑解惑(一) 网关如何接收服务端的秒杀结果?
- 09 学习开源代码该如何入手?
- 10 如何使用异步设计提升系统性能?
- 11 如何实现高性能的异步网络传输?
- 12 序列化与反序列化:如何通过网络传输结构化的数据?
- 13 传输协议:应用程序之间对话的语言
- 14 内存管理:如何避免内存溢出和频繁的垃圾回收?
- 15 Kafka如何实现高性能IO?
- 16 缓存策略:如何使用缓存来减少磁盘IO?
- 17 如何正确使用锁保护共享数据,协调异步线程?
- 18 如何用硬件同步原语(CAS)替代锁?
- 19 数据压缩:时间换空间的游戏
- 20 RocketMQ Producer源码分析:消息生产的实现过程
- 21 Kafka Consumer源码分析:消息消费的实现过程
- 22 Kafka和RocketMQ的消息复制实现的差异点在哪?
- 23 RocketMQ客户端如何在集群中找到正确的节点?
- 24 Kafka的协调服务ZooKeeper:实现分布式系统的“瑞士军刀”
- 25 RocketMQ与Kafka中如何实现事务?
- 26 MQTT协议:如何支持海量的在线IoT设备
- 27 Pulsar的存储计算分离设计:全新的消息队列设计思路
- 28 答疑解惑(二):我的100元哪儿去了?
- 29 流计算与消息(一):通过Flink理解流计算的原理
- 30 流计算与消息(二):在流计算中使用Kafka链接计算任务
- 31 动手实现一个简单的RPC框架(一):原理和程序的结构
- 32 动手实现一个简单的RPC框架(二):通信与序列化
- 33 动手实现一个简单的RPC框架(三):客户端
- 34 动手实现一个简单的RPC框架(四):服务端
- 35 答疑解惑(三):主流消息队列都是如何存储消息的?
- 加餐 JMQ的Broker是如何异步处理消息的?
- 结束语 程序员如何构建知识体系?