日韩精品 中文字幕 动漫,91亚洲午夜一区,在线不卡日本v一区v二区丶,久久九九国产精品自在现拍

注冊(cè) | 登錄讀書好,好讀書,讀好書!
讀書網(wǎng)-DuShu.com
當(dāng)前位置: 首頁(yè)出版圖書人文社科法律法律法規(guī)商法Redis核心原理與實(shí)踐

Redis核心原理與實(shí)踐

Redis核心原理與實(shí)踐

定 價(jià):¥138.00

作 者: 梁國(guó)斌 著
出版社: 電子工業(yè)出版社
叢編項(xiàng): 深入理解精品
標(biāo) 簽: 暫缺

ISBN: 9787121415487 出版時(shí)間: 2021-07-01 包裝: 平裝
開本: 16開 頁(yè)數(shù): 468 字?jǐn)?shù):  

內(nèi)容簡(jiǎn)介

  本書深入地分析了Redis核心功能的內(nèi)部機(jī)制與實(shí)現(xiàn)方式,大部分內(nèi)容源自對(duì)Redis源碼的分析,并從中總結(jié)出實(shí)現(xiàn)原理。通過(guò)閱讀本書,讀者可以快速、輕松地了解Redis的內(nèi)部運(yùn)行機(jī)制。 本書首先介紹了Redis常用的數(shù)據(jù)類型的編碼格式,包括字符串、列表、散列、集合、有序集合,這是Redis存儲(chǔ)數(shù)據(jù)的基礎(chǔ)。接著分析了Redis的事件機(jī)制,剖析了Redis事件驅(qū)動(dòng)的實(shí)現(xiàn)原理,通過(guò)這部分內(nèi)容,讀者可以了解一個(gè)遠(yuǎn)程服務(wù)程序的整體架構(gòu)。本書還分析了Redis持久化、主從復(fù)制、Sentinel機(jī)制、Cluster機(jī)制的實(shí)現(xiàn)原理,這部分內(nèi)容是Redis的核心功能。在這部分內(nèi)容中,本書也會(huì)延伸分析Redis中使用的UNIX機(jī)制,如UNIX網(wǎng)絡(luò)編程、進(jìn)程通信、線程同步等,并通過(guò)Redis源碼展示這些UNIX機(jī)制的使用方式。 本書最后介紹了Redis的高級(jí)特性,包括事務(wù)、非阻塞刪除、Lua腳本、Module模塊、Stream消息流,以及Redis 6提供的ACL訪問(wèn)控制列表、Tracking機(jī)制等,這部分內(nèi)容不僅分析內(nèi)部實(shí)現(xiàn),還提供了詳細(xì)的使用案例,幫助讀者循序漸進(jìn)地了解這些特性。

作者簡(jiǎn)介

  多年軟件設(shè)計(jì)與開發(fā)經(jīng)驗(yàn)。Redis長(zhǎng)期使用者,熟悉Redis的核心原理與實(shí)現(xiàn)方式。公眾號(hào)(binecy)的維護(hù)者,主要分享各類軟件和框架的源碼分析。

圖書目錄

目  錄

第1部分 數(shù)據(jù)結(jié)構(gòu)與編碼
第1章 字符串
1.1 redisObject
1.2 sds
1.2.1 定義
1.2.2 操作分析
1.2.3 編碼
第2章 列表
2.1 ziplist
2.1.1 定義
2.1.2 字節(jié)序
2.1.3 操作分析
2.1.4 級(jí)聯(lián)更新
2.2 quicklist
2.2.1 定義
2.2.2 操作分析
2.2.3 編碼
第3章 散列
3.1 字典
3.1.1 定義
3.1.2 操作分析
3.1.3 擴(kuò)容
3.1.4 縮容
3.1.5 編碼
3.2 數(shù)據(jù)庫(kù)
第4章 集合
4.1 無(wú)序集合
4.1.1 定義
4.1.2 操作分析
4.1.3 編碼
4.2 有序集合
4.2.1 定義
4.2.2 操作分析
4.2.3 編碼
第2部分 事件機(jī)制與命令執(zhí)行
第5章 Redis啟動(dòng)過(guò)程
5.1 服務(wù)器定義
5.2 main函數(shù)
5.3 Redis初始化過(guò)程
第6章 事件機(jī)制
6.1 Redis事件機(jī)制概述
6.2 Redis啟動(dòng)時(shí)創(chuàng)建的事件
6.3 事件循環(huán)器的運(yùn)行
第7章 epoll與網(wǎng)絡(luò)通信
7.1 I/O復(fù)用模型
7.2 epoll網(wǎng)絡(luò)編程
7.3 Redis網(wǎng)絡(luò)通信啟動(dòng)過(guò)程
7.3.1 Redis網(wǎng)絡(luò)服務(wù)
7.3.2 Redis中的epoll
第8章 客戶端
8.1 定義
8.2 創(chuàng)建客戶端
8.3 關(guān)閉客戶端
8.4 客戶端配置
第9章 Redis命令執(zhí)行過(guò)程
9.1 RESP協(xié)議
9.2 解析請(qǐng)求
9.3 返回響應(yīng)
9.4 執(zhí)行命令
第10章 網(wǎng)絡(luò)I/O線程
10.1 線程概述
10.2 互斥量概述
10.3 初始化I/O線程
10.4 解析請(qǐng)求
10.5 I/O線程主邏輯
10.6 返回響應(yīng)
10.7 I/O線程狀態(tài)切換
第3部分 持久化與復(fù)制
第11章 RDB
11.1 RDB定時(shí)邏輯
11.2 RDB持久化過(guò)程
11.2.1 fork子進(jìn)程
11.2.2 生成RDB文件
11.2.3 寫入RDB數(shù)據(jù)
11.2.4 父進(jìn)程收尾
11.3 RDB文件加載過(guò)程
11.4 RDB文件分析示例
11.5 RDB配置
11.6 UNIX寫時(shí)復(fù)制機(jī)制
11.7 UNIX I/O與緩存
11.7.1 內(nèi)核緩沖區(qū)
11.7.2 I/O緩存區(qū)
11.7.3 sync與fdatasync
第12章 AOF
12.1 AOF定時(shí)邏輯
12.2 AOF持久化過(guò)程
12.2.1 命令傳播
12.2.2 刷新AOF緩沖區(qū)
12.2.3 同步磁盤
12.3 AOF重寫過(guò)程
12.3.1 fork子進(jìn)程
12.3.2 子進(jìn)程處理
12.3.3 父進(jìn)程收尾
12.4 AOF文件加載過(guò)程
12.5 AOF文件分析示例
12.6 AOF配置
第13章 主從復(fù)制
13.1 流程概述
13.2 主從握手流程
13.2.1 處理REPLICAOF命令
13.2.2 主從連接
13.2.3 握手流程
13.3 從節(jié)點(diǎn)同步流程
13.3.1 發(fā)送PSYNC命令
13.3.2 部分同步
13.3.3 全量同步
13.4 主節(jié)點(diǎn)同步流程
13.4.1 處理PSYNC命令
13.4.2 全量同步
13.4.3 部分同步
13.4.4 部分同步的實(shí)現(xiàn)細(xì)節(jié)
13.5 PSYNC2
13.5.1 從節(jié)點(diǎn)重啟
13.5.2 Cluster故障轉(zhuǎn)移
13.6 主從復(fù)制流程
13.7 定時(shí)邏輯
13.8 主從復(fù)制配置
第4部分 分布式架構(gòu)
第14章 Raft算法
14.1 分布式一致性的難點(diǎn)
14.2 CAP理論
14.3 Raft算法的設(shè)計(jì)
14.3.1 領(lǐng)導(dǎo)選舉
14.3.2 日志復(fù)制
14.3.3 安全性
14.4 Redis中的Raft算法
第15章 Redis Sentinel
15.1 Redis Sentinel的應(yīng)用示例
15.2 Redis Sentinel的實(shí)現(xiàn)原理
15.2.1 定義
15.2.2 Sentinel節(jié)點(diǎn)啟動(dòng)
15.2.3 Sentinel機(jī)制的主邏輯
15.2.4 Sentinel節(jié)點(diǎn)建立網(wǎng)絡(luò)連接
15.2.5 Sentinel機(jī)制的定時(shí)消息
15.3 Redis Sentinel的故障轉(zhuǎn)移
15.3.1 主觀下線
15.3.2 客觀下線
15.3.3 開始故障轉(zhuǎn)移
15.3.4 選舉leader節(jié)點(diǎn)
15.3.5 故障轉(zhuǎn)移狀態(tài)機(jī)
15.4 客戶端交互
第16章 Redis Cluster
16.1 Redis Cluster的應(yīng)用示例
16.1.1 搭建Redis Cluster集群
16.1.2 客戶端重定向
16.1.3 槽位遷移案例
16.2 Redis Cluster槽位管理
16.2.1 定義
16.2.2 重定向的實(shí)現(xiàn)
16.2.3 槽位遷移的實(shí)現(xiàn)
16.3 Redis Cluster啟動(dòng)過(guò)程
16.3.1 節(jié)點(diǎn)啟動(dòng)
16.3.2 節(jié)點(diǎn)握手
16.3.3 指派槽位
16.3.4 建立主從關(guān)系
16.4 Redis Cluster節(jié)點(diǎn)通信
16.4.1 Gossip算法
16.4.2 消息定義
16.4.3 建立連接
16.4.4 握手過(guò)程
16.4.5 定時(shí)消息
16.5 Redis Cluster的故障轉(zhuǎn)移
16.5.1 節(jié)點(diǎn)下線
16.5.2 選舉過(guò)程
16.5.3 從節(jié)點(diǎn)晉升
16.5.4 更新集群信息
16.5.5 建立主從關(guān)系
第5部分 高級(jí)特性
第17章 事務(wù)
17.1 事務(wù)的應(yīng)用示例
17.2 事務(wù)的實(shí)現(xiàn)原理
17.2.1 WATCH命令的實(shí)現(xiàn)
17.2.2 MULTI、EXEC命令的實(shí)現(xiàn)
第18章 非阻塞刪除
18.1 UNLINK命令的實(shí)現(xiàn)原理
18.2 后臺(tái)線程
18.2.1 條件變量
18.2.2 后臺(tái)線程的實(shí)現(xiàn)
第19章 內(nèi)存管理
19.1 動(dòng)態(tài)內(nèi)存分配器
19.1.1 內(nèi)存分配器概述
19.1.2 Jemalloc設(shè)計(jì)概述
19.1.3 碎片整理機(jī)制
19.2 數(shù)據(jù)過(guò)期機(jī)制
19.2.1 定時(shí)刪除
19.2.2 惰性刪除
19.3 數(shù)據(jù)淘汰機(jī)制
19.3.1 LRU時(shí)間戳
19.3.2 LFU計(jì)數(shù)
19.3.3 數(shù)據(jù)淘汰算法
第20章 Redis Stream
20.1 Redis Stream的應(yīng)用示例
20.1.1 添加、讀取消息
20.1.2 消費(fèi)組
20.1.3 ACK確認(rèn)
20.1.4 刪除消息
20.2 Stream的實(shí)現(xiàn)原理
20.2.1 listpack結(jié)構(gòu)
20.2.2 Rax結(jié)構(gòu)
20.2.3 Stream結(jié)構(gòu)
20.2.4 Stream持久化與復(fù)制
第21章 訪問(wèn)控制列表ACL
21.1 ACL的應(yīng)用示例
21.1.1 創(chuàng)建用戶
21.1.2 可執(zhí)行命令授權(quán)
21.1.3 可訪問(wèn)鍵授權(quán)
21.1.4 Pub/Sub頻道授權(quán)
21.2 ACL的實(shí)現(xiàn)原理
21.2.1 定義
21.2.2 初始化ACL環(huán)境
21.2.3 用戶規(guī)則設(shè)置
21.2.4 用戶權(quán)限檢查
第22章 Redis Tracking
22.1 Redis Tracking的應(yīng)用示例
22.1.1 基本應(yīng)用
22.1.2 廣播模式
22.1.3 OPTIN、OPTOUT、NOLOOP
22.1.4 轉(zhuǎn)發(fā)模式
22.2 Redis Tracking的實(shí)現(xiàn)原理
22.2.1 RESP3協(xié)議
22.2.2 開啟Redis Tracking
22.2.3 記錄查詢鍵
22.2.4 非廣播模式下發(fā)送失效消息
22.2.5 廣播模式下發(fā)送失效消息
22.2.6 清除記錄鍵
第23章 Lua腳本
23.1 Lua腳本的應(yīng)用示例
23.1.1 使用EVAL命令
23.1.2 redis.call函數(shù)
23.1.3 類型轉(zhuǎn)換
23.1.4 使用Lua實(shí)現(xiàn)數(shù)據(jù)類型
23.1.5 腳本超時(shí)
23.2 Lua腳本的實(shí)現(xiàn)原理
23.2.1 Lua與C語(yǔ)言交互
23.2.2 Redis中的Lua
第24章 Redis Module
24.1 Module的應(yīng)用示例
24.1.1 使用Module實(shí)現(xiàn)數(shù)據(jù)類型
24.1.2 Module API
24.1.3 Module的特性
24.2 Module的實(shí)現(xiàn)原理
24.2.1 C語(yǔ)言動(dòng)態(tài)庫(kù)
24.2.2 定義
24.2.3 初始化Module的執(zhí)行環(huán)境
24.2.4 加載Module
24.2.5 創(chuàng)建Module命令
24.2.6 內(nèi)存自動(dòng)管理
24.2.7 調(diào)用Redis命令
24.2.8 自定義數(shù)據(jù)類型

本目錄推薦

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