深入学习Redis核心原理

你将基于Golang从零重写Redis各类核心功能,包含事件循环、RESP序列化协议、持久化、命令管道、内存逐出机制与事务模块,透过手写实现完整吃透Redis底层内部运行逻辑。

课程整体介绍

Redis是当下应用场景极广的高性能内存数据库,行业内常将其用作缓存服务,同时也可承担消息中间件、流式数据引擎等多种业务角色。本课程拆解Redis底层核心运行机制,针对性解答行业常见疑问:Redis性能高效的底层原因、单线程架构下如何支撑海量TCP并发连接等核心问题。

本套课程为自主学习录播课程,核心学习思路为使用Golang复刻Redis全部关键底层能力,在动手编码过程中吃透内部实现逻辑,课程重点覆盖以下核心模块:

  • 事件循环机制
  • RESP序列化通信协议
  • 近似LRU内存逐出机制
  • 命令管道与事务实现

本次基于Golang开发的简易Redis服务可直接兼容标准Redis客户端,能像原生Redis一样接收客户端连接访问,完整项目代码全部开源,方便课后调试、拓展与二次学习。

完整课程章节内容

  1. 01 课程介绍
  2. 02 是什么让Redis如此特别
  3. 03 编写一个简单的TCP回显服务器
  4. 04 学习Redis的语言
  5. 05 实现RESP协议
  6. 06 实现PING命令
  7. 07 I/O多路复用和事件循环
  8. 08 处理多个并发客户端
  9. 09 实现GET、SET和TTL命令
  10. 10 实现DEL、EXPIRE和自动删除
  11. 11 逐出策略及简单优先实现
  12. 12 实现命令管道
  13. 13 实现AOF持久化
  14. 14 对象、编码及实现INCR命令
  15. 15 实现INFO命令和allkeys-random逐出策略
  16. 16 近似LRU算法
  17. 17 实现近似LRU算法
  18. 18 理解Redis如何限制内存使用
  19. 19 覆盖malloc以提高性能
  20. 20 实现优雅关闭
  21. 21 实现事务
  22. 22 列表内部结构 – 压缩列表和快速列表
  23. 23 集合内部结构 – 整数集合
  24. 24 地理空间查询和Geohash
  25. 25 字符串内部结构 – 简单动态字符串
  26. 26 Hyperloglog和基数估算
  27. 27 LFU(最不经常使用)和近似计数
  28. 28 接下来的学习方向
声明:本站所有资源、素材等全部来源于互联网,赞助VIP仅用于对IT资源服务器带宽等费用支出做支持,从本站下载资源,说明你已同意本条款。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。