引言

一直在使用redis,但是却没有系统的了解过它的底层实现,准备边学习边记录,深入了解redis。
打算分析以下几个方面:

  • redis的基本类型及底层原理与java对比,每种数据类型的使用场景
  • redis底层对象
  • key的一致性Hash算法
  • 单线程的redis“快”
  • redis的过期策略以及内存淘汰机制
  • redis分布式锁原理
  • redis备份方式
  • 多机环境下主从赋值、哨兵、集群的优缺点
  • 哨兵机制与选举算法
  • 集群机制的分片原理
  • 缓存的key并发竞争问题
  • 缓存和数据库双写一致性问题
  • 缓存雪崩问题
  • 缓存击穿问题

这只是暂时列举出来,最后有可能删减。

1、前期准备

1.1、带注释的源码

redis-3.0-annotated

1.2、相关资料

《Redis设计与实现》PDF
链接:https://pan.baidu.com/s/190tZRsOQpGCqs57BGL-cXA 密码:i94A

参考的博客文章将在每一篇文章下方给出。

tencent.jpg