本文框架如下
第一部分,主要是在閱讀代碼過程中的日志和筆記;
第二部分,主要介紹了 Redis 的主要框架,以及 Redis 是如何提供服務的,從一個最簡單的命令開始講起;
第三部分,主要介紹 Redis 底層用作存儲的數據結構,這一部分很有趣;
第四部分,主要講解了 Redis 的核心功能,包括持久化,訂閱/發布模式,主從復制,事務機制,集群等等;
第五部分,展示了 Redis 幾個簡單的應用;
第六部分,介紹了 Redis 和 Memcached 的區別,以及稍稍講解了 Memcached。
Tips:本文內容已經整理成了pdf版本,內容由真實騰訊專家手寫,感興趣的朋友可以通過【關注+點贊+評論本文】的方式獲取到騰訊專家手寫Redis源碼日志筆記pdf版本!
Redis服務框架
①初探 Redis
- Redis 在緩存系統所處的位置
②Redis 事件驅動詳解
- 事件驅動數據結構
- 事件循環中心
-
Redis 事件驅動原理
-
事件注冊詳解
-
準備監聽工作
-
為監聽套接字注冊事件
-
事件循環
-
事件觸發
③Redis 是如何提供服務的
- initServerConfig()
- aeMain()
- 新連接的處理流程
- 請求的處理流程
- 執行命令
- 在哪里回復客戶端
Redis 基礎數據結構
①Redis 數據結構綜述
一覽 Redis 數據結構:
- Redis 命令和相關的數據結構
- Redis 數據結構 redisOb
- Redis 數據結構 sds
- Redis 數據結構 dict
- Redis 數據結構 ziplist
- Redis 數據結構 skiplist
- Redis 數據結構 intset
Redis 內功心法
①Redis 數據淘汰機制
- 概述
- LRU 數據淘汰機制
- TTL 數據淘汰機制
- 在哪里開始淘汰數據
②RDB 持久化策略
- 簡介 Redis 持久化 RDB、AOF
- 數據結構 rio
- RDB 持久化的運作機制
- RDB 數據的組織方式
③AOF 持久化策略
- 簡介
- AOF 數據組織方式
- AOF 持久化運作機制
- 細說更新緩存
- AOF 恢復過程
- AOF 的適用場景
④訂閱發布機制
- 兩種訂閱
- 訂閱相關數據結構
- 訂閱過程
- 消息發布
⑤主從復制
- 概述
- 積壓空間
- 主從數據同步機制概述
- 全同步
- 部分同步
- 緩存主機
- 總結
⑥Redis 事務機制
- Redis 事務簡述
- Redis 命令隊列
- 鍵值的監視
- Redis 事務的執行與取消
- Redis 事務番外篇
⑦Redis 與 Lua 腳本
- Lua 簡介
- Redis 為什么添加 Lua 支持
- Lua 環境的初始化
- Lua 腳本執行 Redis 命令
- Redis Lua 腳本的執行過程
- 臟命令
- Lua 腳本的傳播
- 總結
⑧Redis 哨兵機制
- Redis 哨兵的服務框架
- 定時程序
- 哨兵與 Redis 服務器的互聯
- HELLO 命令
- INFO 命令
- 心跳
- 在線狀態監測
- 故障修復
- Redis 監視器
- Redis 數據遷移
⑨Redis 集群(上)
- 前奏
- 談一致性哈希算法(consistent hashing)
- 怎么實現?
- twemproxy - Redis 集群管理方案
- Redis 官方版本支持的集群
⑩Redis 集群(下)
- 數據結構
- 數據訪問
- 新的節點
- 心跳機制
- 故障修復
- 故障修復的協議
- 數據遷移
- 總結
Redis 應用
- Redis 應用
- 積分排行榜
- 分布式鎖
- 消息中間件
- Web 服務器存儲 session
其他
①內存數據管理
- 共享對象
- 兩種內存分配策略
- memory aware 支持
- zmalloc_get_private_dirty() 函數
- 總結
②Redis 日志和斷言
- Redis 日志
- Redis 斷言
③Redis 與 Memcache
- 單進程單線程與單進程多線程
- 豐富與簡單的數據結構
- 其他
- 性能測試
④小剖Memcache
- 初始化過程
- UNIX 域套接字和 UDP/TCP 工作模式
- 工作線程管理和線程調配方式
- 存儲容器
- 連接管理
- 一個請求的工作流程
- Memcached 的分布式
⑤Memcached slab 分配策略
- Memcached slab 概述
- slab class
- 內存分配的過程
- lru 機制
⑥源碼閱讀工具
- sublime text 2/3
- Eclipse CDT
- Source insight
最后
更多Java進階學習資料、2021大廠面試真題、視頻資料可以**點擊這里獲取到免費下載方式!**
學習視頻:
大廠面試真題:
t 2/3
- Eclipse CDT
- Source insight
[外鏈圖片轉存中…(img-yHLD6gMl-1625414665774)]
最后
更多Java進階學習資料、2021大廠面試真題、視頻資料可以**點擊這里獲取到免費下載方式!**
學習視頻:
[外鏈圖片轉存中…(img-D9KlDPSh-1625414665775)]
大廠面試真題: