|
|
|
|
# SUMMARY
|
|
|
|
|
|
|
|
|
|
* [简介](./README.md)
|
|
|
|
|
* [开篇词 | 优秀的程序员,你的技术栈中不能只有“增删改查”](./docs/109446.md)
|
|
|
|
|
* [预习 | 怎样更好地学习这门课?](./docs/109457.md)
|
|
|
|
|
* [01 | 为什么需要消息队列?](./docs/109572.md)
|
|
|
|
|
* [02 | 该如何选择消息队列?](./docs/109750.md)
|
|
|
|
|
* [03 | 消息模型:主题和队列有什么区别?](./docs/110459.md)
|
|
|
|
|
* [04 | 如何利用事务消息实现分布式事务?](./docs/111269.md)
|
|
|
|
|
* [05 | 如何确保消息不会丢失?](./docs/111488.md)
|
|
|
|
|
* [06 | 如何处理消费过程中的重复消息?](./docs/111552.md)
|
|
|
|
|
* [07 | 消息积压了该如何处理?](./docs/113401.md)
|
|
|
|
|
* [08 | 答疑解惑(一) : 网关如何接收服务端的秒杀结果?](./docs/113675.md)
|
|
|
|
|
* [09 | 学习开源代码该如何入手?](./docs/115519.md)
|
|
|
|
|
* [10 | 如何使用异步设计提升系统性能?](./docs/117272.md)
|
|
|
|
|
* [11 | 如何实现高性能的异步网络传输?](./docs/118322.md)
|
|
|
|
|
* [12 | 序列化与反序列化:如何通过网络传输结构化的数据?](./docs/118848.md)
|
|
|
|
|
* [13 | 传输协议:应用程序之间对话的语言](./docs/119988.md)
|
|
|
|
|
* [14 | 内存管理:如何避免内存溢出和频繁的垃圾回收?](./docs/120949.md)
|
|
|
|
|
* [加餐 | JMQ的Broker是如何异步处理消息的?](./docs/126504.md)
|
|
|
|
|
* [15 | Kafka如何实现高性能IO?](./docs/126493.md)
|
|
|
|
|
* [16 | 缓存策略:如何使用缓存来减少磁盘IO?](./docs/128038.md)
|
|
|
|
|
* [17 | 如何正确使用锁保护共享数据,协调异步线程?](./docs/129333.md)
|
|
|
|
|
* [18 | 如何用硬件同步原语(CAS)替代锁?](./docs/130743.md)
|
|
|
|
|
* [19 | 数据压缩:时间换空间的游戏](./docs/131826.md)
|
|
|
|
|
* [20 | RocketMQ Producer源码分析:消息生产的实现过程](./docs/132889.md)
|
|
|
|
|
* [21 | Kafka Consumer源码分析:消息消费的实现过程](./docs/135120.md)
|
|
|
|
|
* [22 | Kafka和RocketMQ的消息复制实现的差异点在哪?](./docs/136030.md)
|
|
|
|
|
* [23 | RocketMQ客户端如何在集群中找到正确的节点?](./docs/136802.md)
|
|
|
|
|
* [24 | Kafka的协调服务ZooKeeper:实现分布式系统的“瑞士军刀”](./docs/137655.md)
|
|
|
|
|
* [25 | RocketMQ与Kafka中如何实现事务?](./docs/138724.md)
|
|
|
|
|
* [26 | MQTT协议:如何支持海量的在线IoT设备?](./docs/139968.md)
|
|
|
|
|
* [27 | Pulsar的存储计算分离设计:全新的消息队列设计思路](./docs/140913.md)
|
|
|
|
|
* [28 | 答疑解惑(二):我的100元哪儿去了?](./docs/142708.md)
|
|
|
|
|
* [29 | 流计算与消息(一):通过Flink理解流计算的原理](./docs/143215.md)
|
|
|
|
|
* [30 | 流计算与消息(二):在流计算中使用Kafka链接计算任务](./docs/143343.md)
|
|
|
|
|
* [31 | 动手实现一个简单的RPC框架(一):原理和程序的结构](./docs/144320.md)
|
|
|
|
|
* [32 | 动手实现一个简单的RPC框架(二):通信与序列化](./docs/144348.md)
|
|
|
|
|
* [33 | 动手实现一个简单的RPC框架(三):客户端](./docs/147127.md)
|
|
|
|
|
* [34 | 动手实现一个简单的RPC框架(四):服务端](./docs/148482.md)
|
|
|
|
|
* [35 | 答疑解惑(三):主流消息队列都是如何存储消息的?](./docs/150045.md)
|
|
|
|
|
* [期中测试丨10个消息队列热点问题自测](./docs/131867.md)
|
|
|
|
|
* [期末测试 | 消息队列100分试卷等你来挑战!](./docs/150797.md)
|
|
|
|
|
* [结束语 | 程序员如何构建知识体系?](./docs/152654.md)
|
|
|
|
|
* [第二季回归丨这次我们一起实战后端存储](./docs/205234.md)
|