幫助中心 | 我的帳號 | 關於我們

Redis5設計與源碼分析/資料庫技術叢書

  • 作者:編者:陳雷
  • 出版社:機械工業
  • ISBN:9787111632788
  • 出版日期:2019/08/01
  • 裝幀:平裝
  • 頁數:415
人民幣:RMB 139 元      售價:
放入購物車
加入收藏夾

內容大鋼
    全書主要分為三部分介紹Redis。第一部分介紹Redis5中使用的數據結構,包括動態字元串、跳躍表、壓縮列表、字典、整數集合和快速鏈表,詳細介紹其基本結構及常見操作。第二部分為本書核心篇章,首先介紹了Redis5的啟動流程,命令解析流程,之後對Redis5中的命令實現進行了全面的介紹,包括鍵命令、字元串命令、哈希表命令、列表命令、集合及有序集合命令、地理位置相關的GEO命令、統計相關的HyperLogLog命令。第三部分,主要介紹了Redis5的一些特性及使用,包括事務、持久化、主從複製以及集群等。

作者介紹
編者:陳雷
    陳雷,好未來學而思網校增長研發負責人,清華與北京郵電大學碩士,曾在百度、騰訊和滴滴等公司工作,12年後端架構經驗。著有《PHP 7底層設計與源碼實現》。

目錄
本書讚譽

前言
第1章  引言
  1.1  Redis簡介
  1.2  Redis 5.0的新特性
  1.3  Redis源碼概述
  1.4  Redis安裝與調試
  1.5  本章小結
第2章  簡單動態字元串
  2.1  數據結構
  2.2  基本操作
    2.2.1  創建字元串
    2.2.2  釋放字元串
    2.2.3  拼接字元串
    2.2.4  其餘API
  2.3  本章小結
第3章  跳躍表
  3.1  簡介
  3.2  跳躍表節點與結構
    3.2.1  跳躍表節點
    3.2.2  跳躍表結構
  3.3  基本操作
    3.3.1  創建跳躍表
    3.3.2  插入節點
    3.3.3  刪除節點
    3.3.4  刪除跳躍表
  3.4  跳躍表的應用
  3.5  本章小結
第4章  壓縮列表
  4.1  壓縮列表的存儲結構
  4.2  結構體
  4.3  基本操作
    4.3.1  創建壓縮列表
    4.3.2  插入元素
    4.3.3  刪除元素
    4.3.4  遍歷壓縮列表
  4.4  連鎖更新
  4.5  本章小結
第5章  字典
  5.1  基本概念
    5.1.1  數組
    5.1.2  Hash函數
    5.1.3  Hash衝突
  5.2  Redis字典的實現
  5.3  基本操作
    5.3.1  字典初始化
    5.3.2  添加元素
    5.3.3  查找元素
    5.3.4  修改元素

    5.3.5  刪除元素
  5.4  字典的遍歷
    5.4.1  迭代器遍歷
    5.4.2  間斷遍歷
  5.5  API列表
  5.6  本章小結
第6章  整數集合
  6.1  數據存儲
  6.2  基本操作
    6.2.1  查詢元素
    6.2.2  添加元素
    6.2.3  刪除元素
    6.2.4  常用API
  6.3  本章小結
第7章  quicklist的實現
  7.1  quicklist簡介
  7.2  數據存儲
  7.3  數據壓縮
    7.3.1  壓縮
    7.3.2  解壓縮
  7.4  基本操作
    7.4.1  初始化
    7.4.2  添加元素
    7.4.3  刪除元素
    7.4.4  更改元素
    7.4.5  查找元素
    7.4.6  常用API
  7.5  本章小結
第8章  Stream
  8.1  Stream簡介
    8.1.1  Stream底層結構listpack
    8.1.2  Stream底層結構Rax簡介
    8.1.3  Stream結構
  8.2  Stream底層結構listpack的實現
    8.2.1  初始化
    8.2.2  增刪改操作
    8.2.3  遍歷操作
    8.2.4  讀取元素
  8.3  Stream底層結構Rax的實現
    8.3.1  初始化
    8.3.2  查找元素
    8.3.3  添加元素
    8.3.4  刪除元素
    8.3.5  遍曆元素
  8.4  Stream結構的實現
    8.4.1  初始化
    8.4.2  添加元素
    8.4.3  刪除元素
    8.4.4  查找元素
    8.4.5  遍歷

  8.5  本章小結
第9章  命令處理生命周期
  9.1  基本知識
    9.1.1  對象結構體robj
    9.1.2  客戶端結構體client
    9.1.3  服務端結構體redisServer
    9.1.4  命令結構體redisCommand
    9.1.5  事件處理
  9.2  server啟動過程
    9.2.1  server初始化
    9.2.2  啟動監聽
  9.3  命令處理過程
    9.3.1  命令解析
    9.3.2  命令調用
    9.3.3  返回結果
  9.4  本章小結
第10章  鍵相關命令的實現
  10.1  對象結構體和資料庫結構體回顧
    10.1.1  對象結構體redisObject
    10.1.2  資料庫結構體redisDb
  10.2  查看鍵信息
    10.2.1  查看鍵屬性
    10.2.2  查看鍵類型
    10.2.3  查看鍵過期時間
  10.3  設置鍵信息
    10.3.1  設置鍵過期時間
    10.3.2  刪除鍵過期時間
    10.3.3  重命名鍵
    10.3.4  修改鍵最後訪問
  10.4  查找鍵
    10.4.1  判斷鍵是否存在
    10.4.2  查找符合模式的鍵
    10.4.3  遍歷鍵
    10.4.4  隨機取鍵
  10.5  操作鍵
    10.5.1  刪除鍵
    10.5.2  序列化/反序列化鍵
    10.5.3  移動鍵
    10.5.4  鍵排序
  10.6  本章小結
第11章  字元串相關命令的實現
  11.1  相關命令介紹
  11.2  設置字元串
    11.2.1  set命令
    11.2.2  mset命令
  11.3  修改字元串
    11.3.1  append命令
    11.3.2  setrange命令
    11.3.3  計數器命令
  11.4  字元串獲取

    11.4.1  get命令
    11.4.2  getset命令
    11.4.3  getrange命令
    11.4.4  strlen命令
    11.4.5  mget命令
  11.5  字元串位操作
    11.5.1  setbit命令
    11.5.2  getbit命令
    11.5.3  bitpos命令
    11.5.4  bitcount命令
    11.5.5  bitop命令
    11.5.6  bitfield命令
  11.6  本章小結
第12章  散列表相關命令的實現
  12.1  簡介
    12.1.1  底層存儲
    12.1.2  底層存儲轉換
    12.1.3  介面說明
  12.2  設置命令
  12.3  讀取命令
    12.3.1  hexists命令
    12.3.2  hget/hmget命令
    12.3.3  hkeys/hvals/hgetall命令
    12.3.4  hlen命令
    12.3.5  hscan命令
  12.4  刪除命令
  12.5  自增命令
  12.6  本章小結
第13章  列表相關命令的實現
  13.1  相關命令介紹
    13.1.1  命令列表
    13.1.2  棧和隊列命令列表
  13.2  push/pop相關命令
    13.2.1  push類命令的實現
    13.2.2  pop類命令的實現
    13.2.3  阻塞push/pop類命令的實現
  13.3  獲取列表數據
    13.3.1  獲取單個元素
    13.3.2  獲取多個元素
    13.3.3  獲取列表長度
  13.4  操作列表
    13.4.1  設置元素
    13.4.2  插入元素
    13.4.3  刪除元素
    13.4.4  裁剪列表
  13.5  本章小結
第14章  集合相關命令的實現
  14.1  相關命令介紹
  14.2  集合運算
    14.2.1  交集

    14.2.2  並集
    14.2.3  差集
  14.3  本章小結
第15章  有序集合相關命令的實現
  15.1  相關命令介紹
  15.2  基本操作
    15.2.1  添加成員
    15.2.2  刪除成員
    15.2.3  基數統計
    15.2.4  數量計算
    15.2.5  計數器
    15.2.6  獲取排名
    15.2.7  獲取分值
    15.2.8  遍歷
  15.3  批量操作
    15.3.1  範圍查找
    15.3.2  範圍刪除
  15.4  集合運算
  15.5  本章小結
第16章  GEO相關命令
  16.1  基礎知識
  16.2  命令實現
    16.2.1  使用geoadd添加坐標
    16.2.2  計算坐標的geohash
    16.2.3  使用geopos查詢位置經緯度
    16.2.4  使用geodist計算兩點距離
    16.2.5  使用georadius/georadius-bymembe查詢範圍內元素
  16.3  本章小結
第17章  HyperLogLog相關命令的實現
  17.1  基本原理
    17.1.1  演算法演進
    17.1.2  線性計數演算法
    17.1.3  對數計數演算法
    17.1.4  自適應計數演算法
    17.1.5  超對數計數演算法
  17.2  HLL Redis實現
    17.2.1  HLL頭對象
    17.2.2  稀疏編碼
    17.2.3  密集編碼
    17.2.4  內部編碼
    17.2.5  編碼轉換
  17.3  命令實現
    17.3.1  添加基數
    17.3.2  近似基數
    17.3.3  合併基數
  17.4  本章小結
第18章  數據流相關命令的實現
  18.1  相關命令介紹
  18.2  基本操作命令原理分析
    18.2.1  添加消息

    18.2.2  刪除消息
    18.2.3  範圍查找
    18.2.4  獲取隊列信息
    18.2.5  長度統計
    18.2.6  剪切消息
  18.3  分組命令原理分析
    18.3.1  分組管理
    18.3.2  消費消息
    18.3.3  響應消息
    18.3.4  獲取未響應消息列表
    18.3.5  修改指定未響應消息歸屬
  18.4  本章小結
第19章  其他命令
  19.1  事務
    19.1.1  事務簡介
    19.1.2  事務命令實現
  19.2  發布-訂閱命令實現
  19.3  Lua腳本
    19.3.1  初始化Lua環境
    19.3.2  在Lua中調用Redis命令
    19.3.3  Redis和Lua數據類型轉換
    19.3.4  命令實現
  19.4  本章小結
第20章  持久化
  20.1  RDB
    20.1.1  RDB執行流程
    20.1.2  RDB文件結構
  20.2  AOF
    20.2.1  AOF執行流程
    20.2.2  AOF重寫
  20.3  RDB與AOF相關配置指令
  20.4  本章小結
第21章  主從複製
  21.1  主從複製功能實現
  21.2  主從複製源碼基礎
  21.3  slaver源碼分析
  21.4  master源碼分析
  21.5  本章小結
第22章  哨兵和集群
  22.1  哨兵
    22.1.1  哨兵簡介
    22.1.2  代碼流程
    22.1.3  主從切換
    22.1.4  常用命令
  22.2  集群
    22.2.1  集群簡介
    22.2.2  代碼流程
    22.2.3  主從切換
    22.2.4  副本漂移
    22.2.5  分片遷移

    22.2.6  通信數據包類型
  22.3  本章小結

  • 商品搜索:
  • | 高級搜索
首頁新手上路客服中心關於我們聯絡我們Top↑
Copyrightc 1999~2008 美商天龍國際圖書股份有限公司 臺灣分公司. All rights reserved.
營業地址:臺北市中正區重慶南路一段103號1F 105號1F-2F
讀者服務部電話:02-2381-2033 02-2381-1863 時間:週一-週五 10:00-17:00
 服務信箱:bookuu@69book.com 客戶、意見信箱:cs@69book.com
ICP證:浙B2-20060032