注冊 | 登錄讀書好,好讀書,讀好書!
讀書網(wǎng)-DuShu.com
當前位置: 首頁出版圖書科學技術計算機/網(wǎng)絡數(shù)據(jù)庫數(shù)據(jù)庫理論Redis 高手心法

Redis 高手心法

Redis 高手心法

定 價:¥100.00

作 者: 李健青
出版社: 電子工業(yè)出版社
叢編項:
標 簽: 暫缺

購買這本書可以去


ISBN: 9787121483455 出版時間: 2024-07-01 包裝: 平裝-膠訂
開本: 128開 頁數(shù): 字數(shù):  

內(nèi)容簡介

  本書共5章。其中,第1章從一條命令的執(zhí)行開始,勾勒出Redis的數(shù)據(jù)存儲原理和整體架構(gòu);第2章介紹了所有數(shù)據(jù)類型的實現(xiàn)原理和應用實戰(zhàn);第3章介紹了RDB快照、AOF、主從復制架構(gòu)、哨兵集群和Redis Cluster的原理及使用方法;第4章介紹了Redis事務、內(nèi)存管理、事件驅(qū)動、發(fā)布/訂閱機制、客戶端緩存和I/O多線程模型;第5章介紹了性能排查與解決問題的檢查清單、使用規(guī)范、內(nèi)存優(yōu)化技巧、生產(chǎn)王者配置、緩存使用策略和分布式鎖演進原理。本書適合后端開發(fā)工程師、運維人員、系統(tǒng)架構(gòu)師及剛?cè)胄械某绦騿T閱讀,用以掌握 Redis 內(nèi)部原理并提升實戰(zhàn)技巧。

作者簡介

  微信公眾號“碼哥字節(jié)”作者、InfoQ簽約作者、后端架構(gòu)師,9 年互聯(lián)網(wǎng)金融后端從業(yè)經(jīng)驗。擅長Redis、Spring、Kafka、MySQL 等技術,對云原生微服務有著深入的研究,喜歡用簡潔、風趣、幽默的語言,將各種技術的知識點或深或淺地展開,分享自己在成長過程中積累的經(jīng)驗和正確提升技術水平的方法論。

圖書目錄

第1章  起勢入門 1
1.1  從頭說起 1
1.1.1  Redis能做什么 1
1.1.2  源碼編譯 2
1.1.3  目錄結(jié)構(gòu) 7
1.2  整體架構(gòu) 8
1.2.1  數(shù)據(jù)存儲原理 10
1.2.2  一條命令的執(zhí)行過程 14
第2章  核心筑基——數(shù)據(jù)結(jié)構(gòu)與心法 23
2.1  字符串實現(xiàn)原理與實戰(zhàn) 23
2.1.1  不同于C語言的字符串 23
2.1.2  SDS的奧秘 24
2.1.3  出招實戰(zhàn):分布式ID生成器 27
2.2  Lists實現(xiàn)原理與實戰(zhàn) 28
2.2.1  線性有序 28
2.2.2  linkedlist、ziplist、quicklist、listpack演進 28
2.2.3  出招實戰(zhàn):消息隊列 36
2.3  Sets實現(xiàn)原理與實戰(zhàn) 40
2.3.1  無序和唯一 40
2.3.2  intset 41
2.3.3  出招實戰(zhàn):共同好友 43
2.4  散列表實現(xiàn)原理與實戰(zhàn) 44
2.4.1  field-value pairs集合 44
2.4.2  dict和listpack 45
2.4.3  出招實戰(zhàn):購物車 49
2.5  Sorted Sets實現(xiàn)原理與實戰(zhàn) 52
2.5.1  有序性和唯一性 52
2.5.2  skiplist dict和listpack 52
2.5.3  出招實戰(zhàn):游戲排行榜 57
2.6  Stream實現(xiàn)原理與實戰(zhàn) 59
2.6.1  支持消費者組的輕量級MQ 59
2.6.2  Radix Tree的奧秘 60
2.6.3  出招實戰(zhàn):實現(xiàn)消費者組特性的消息隊列 67
2.7  Geospatial實現(xiàn)原理與實戰(zhàn) 76
2.7.1  基于位置服務 77
2.7.2  GeoHash編碼和底層數(shù)據(jù)結(jié)構(gòu) 81
2.7.3  出招實戰(zhàn):附近的人 86
2.8  Bitmap實現(xiàn)原理與實戰(zhàn) 90
2.8.1  Bitmap 90
2.8.2  SDS數(shù)據(jù)結(jié)構(gòu)構(gòu)成的位數(shù)組 91
2.8.3  出招實戰(zhàn):億級用戶登錄判斷、簽到統(tǒng)計系統(tǒng) 94
2.9  HyperLogLog實現(xiàn)原理與實戰(zhàn) 97
2.9.1  基數(shù)統(tǒng)計 97
2.9.2  稀疏矩陣和稠密矩陣 98
2.9.3  出招實戰(zhàn):海量網(wǎng)頁訪問量統(tǒng)計 99
2.10  Bloom Filter實現(xiàn)原理與實戰(zhàn) 101
2.10.1  Bloom Filter 102
2.10.2  位數(shù)組和哈希函數(shù) 102
2.10.3  出招實戰(zhàn):緩存穿透解決方案 103
2.11  Redis高性能的原因 106
2.11.1  基于內(nèi)存實現(xiàn) 107
2.11.2  I/O多路復用模型 108
2.11.3  單線程模型 110
2.11.4  高效的數(shù)據(jù)結(jié)構(gòu) 112
2.11.5  全局散列表 113
第3章  不死之身——高可用 114
3.1  宕機恢復,不丟數(shù)據(jù)穩(wěn)如山 114
3.1.1  RDB 快照 114
3.1.2  AOF 118
3.2  主從復制架構(gòu) 125
3.2.1  主從數(shù)據(jù)同步原理 127
3.2.2  主從同步的缺點 135
3.3  哨兵集群 136
3.3.1  哨兵的任務 138
3.3.2  哨兵集群原理 143
3.4  Redis集群 147
3.4.1  Redis 集群是什么 148
3.4.2  Redis 集群的原理 150
3.4.3  集群配置注意事項 164
第4章  結(jié)丹飛升——高級技能進階 165
4.1  Redis事務修煉手冊 165
4.1.1  什么是事務的 ACID 165
4.1.2  Redis 如何實現(xiàn)事務 166
4.1.3  Redis 事務滿足 ACID 嗎 168
4.2  Redis內(nèi)存管理 174
4.2.1  淘汰策略概述 174
4.2.2  過期刪除策略 183
4.3  Redis事件驅(qū)動:文件和時間的協(xié)奏曲 185
4.3.1  Redis server 啟動入口 186
4.3.2  文件事件 190
4.3.3  時間事件 191
4.4  Redis發(fā)布/訂閱機制深度解析 194
4.4.1  發(fā)布/訂閱機制簡介 194
4.4.2  發(fā)布/訂閱機制實戰(zhàn) 195
4.4.3  原理分析 199
4.4.4  使用場景 204
4.5  性能必殺技之客戶端緩存 205
4.5.1  為什么需要客戶端緩存 205
4.5.2  客戶端緩存實現(xiàn)原理 207
4.5.3  源碼解析 211
4.6  性能必殺技之Redis I/O多線程模型 213
4.6.1  單線程模型真的只有一個線程嗎 213
4.6.2  線程模型的演化 214
4.6.3  I/O多線程模型解讀 215
4.7  Redis內(nèi)存碎片深度解析與優(yōu)化策略 221
4.7.1  數(shù)據(jù)已刪,釋放的內(nèi)存去哪了 221
4.7.2  什么是內(nèi)存碎片 223
4.7.3  內(nèi)存碎片的形成原因 223
4.7.4  內(nèi)存碎片解決之道 224
第5章  元嬰大成——出師實戰(zhàn) 227
5.1  Redis性能排查與解決問題的終極檢查清單 227
5.1.1  性能基線測量 227
5.1.2  慢命令監(jiān)控 229
5.1.3  解決性能問題的終極檢查清單 230
5.2  Redis很強,不懂使用規(guī)范就糟蹋了 237
5.2.1  key-value使用規(guī)范 237
5.2.2  命令使用規(guī)范 239
5.2.3  數(shù)據(jù)存儲使用規(guī)范 240
5.2.4  SDK使用規(guī)范 240
5.2.5  運維規(guī)范 241
5.3  Redis內(nèi)存優(yōu)化必殺技,小內(nèi)存存儲大數(shù)據(jù) 241
5.3.1  key-value優(yōu)化 242
5.3.2  小數(shù)據(jù)集合編碼優(yōu)化 243
5.3.3  使用對象共享池 244
5.3.4  使用bit或byte級別操作 244
5.3.5  巧用Hashes類型優(yōu)化 245
5.3.6  使用內(nèi)存碎片清理功能 246
5.3.7  使用32位的Redis 246
5.4  生產(chǎn)王者配置詳解 246
5.4.1  常規(guī)配置 247
5.4.2  RDB 快照持久化 250
5.4.3  主從復制 251
5.4.4  安全 255
5.4.5  內(nèi)存管理 256
5.4.6  惰性釋放 257
5.4.7  AOF 持久化 259
5.4.8  Redis集群 261
5.4.9  性能監(jiān)控 264
5.4.10  高級配置 264
5.4.11  在線內(nèi)存碎片清理 270
5.4.12  綁定 CPU 271
5.4.13  sentinel.conf 哨兵 271
5.5  緩存擊穿、緩存穿透、緩存雪崩怎么解決 275
5.5.1  緩存擊穿 275
5.5.2  緩存穿透 277
5.5.3  緩存雪崩 278
5.6  Redis緩存策略與數(shù)據(jù)庫一致性問題深度剖析 280
5.6.1  緩存策略 281
5.6.2  緩存與數(shù)據(jù)庫一致性是什么 287
5.6.3  旁路緩存的問題分析 287
5.6.4  數(shù)據(jù)庫與緩存一致性解決方案 293
5.6.5  總結(jié) 295
5.7  Redis分布式鎖演進原理與實戰(zhàn) 296
5.7.1  為什么需要分布式鎖 296
5.7.2  入門級分布式鎖 297
5.7.3  釋放別人的鎖 299
5.7.4  可重入鎖 300
5.7.5  正確配置鎖過期時間 303
5.7.6  Redis 部署方式對鎖的影響 307
5.7.7  紅鎖 307
5.7.8  紅鎖的是與非 308

本目錄推薦

掃描二維碼
Copyright ? 讀書網(wǎng) www.stefanvlieger.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號 鄂公網(wǎng)安備 42010302001612號