定 價:59.8 元
叢書名:大數(shù)據(jù)創(chuàng)新人才培養(yǎng)系列
- 作者:張云河 王碩
- 出版時間:2021/8/1
- ISBN:9787115563217
- 出 版 社:人民郵電出版社
- 中圖法分類:TP311.138
- 頁碼:
- 紙張:膠版紙
- 版次:
- 開本:128開
Redis是一個十分熱門的內(nèi)存數(shù)據(jù)庫,它擁有眾多優(yōu)秀特性,已經(jīng)被越來越多的公司采用,值得每一位開發(fā)者學習。通過本書講述的Redis在開發(fā)和運維等方面的案例,讀者不僅可以系統(tǒng)地學到有關Redis的大量知識,還可以將案例中所講解的內(nèi)容用于開發(fā)和運維等在內(nèi)的各類生產(chǎn)實踐。書中案例涉及的各種知識、命令和工具,均來自作者一線企業(yè)級應用的總結。本書的特色在于講解知識點的同時,輔助以大量生動的例子,以幫助讀者更好的理解Redis的使用。
本書通過實戰(zhàn)的理論和案例全面系統(tǒng)的講解了Redis技術,適合所有渴望深入學習Redis的讀者。
1.覆蓋Redis 6版本。
2.在較小的篇幅里面覆蓋了絕大部分Redis核心特性,內(nèi)容相當豐富。
3.面向初學者的行文風格,加上大量精美圖片,幫助讀者快速掌握Redis技術。
4.不僅介紹Redis特性,還展示它們的實際用法,真正幫助讀者學會如何使用Redis。
王碩 十多年軟件開發(fā)經(jīng)驗,架構師,項目經(jīng)驗豐富,精通Java/Python/Go等,擅長云計算,大數(shù)據(jù)和物聯(lián)網(wǎng),著有《PyQt 5 快速開發(fā)與實戰(zhàn)》,《Python 3.* 全棧開發(fā)從入門到精通》等。
第1章 初識Redis 1
1.1 Redis快速入門 1
1.1.1 Redis簡介 1
1.1.2 Redis特性 2
1.2 Redis環(huán)境搭建 3
1.2.1 在Windows下安裝Redis 4
1.2.2 在Linux下安裝Redis 7
1.3 Redis可視化工具 13
1.4 搭建Redis集群環(huán)境 14
1.4.1 配置VMware準備安裝
CentOS 15
1.4.2 安裝Linux 18
1.4.3 安裝VMware Tools 20
1.4.4 虛擬機與宿主機的網(wǎng)絡設置 21
1.4.5 復制虛擬機 25
第2章 Redis常用數(shù)據(jù)類型及命令 28
2.1 String類型 28
2.1.1 SET 28
2.1.2 SETNX 29
2.1.3 SETEX 29
2.1.4 SETRANGE 30
2.1.5 MSET 30
2.1.6 MSETNX 31
2.1.7 APPEND 31
2.1.8 GET 32
2.1.9 MGET 32
2.1.10 GETRANGE 33
2.1.11 GETSET 33
2.1.12 STRLEN 34
2.1.13 DECR 34
2.1.14 DECRBY 35
2.1.15 INCR 35
2.1.16 INCRBY 36
2.2 Hash類型 36
2.2.1 HSET 36
2.2.2 HSETNX 37
2.2.3 HMSET 37
2.2.4 HGET 37
2.2.5 HMGET 38
2.2.6 HGETALL 38
2.2.7 HDEL 38
2.2.8 HLEN 39
2.2.9 HEXISTS 39
2.2.10 HINCRBY 40
2.2.11 HKEYS 40
2.2.12 HVALS 41
2.3 List類型 41
2.3.1 LPUSH 41
2.3.2 LPUSHX 42
2.3.3 RPUSH 42
2.3.4 RPUSHX 43
2.3.5 LPOP 43
2.3.6 RPOP 44
2.3.7 LLEN 44
2.3.8 LREM 45
2.3.9 LSET 46
2.3.10 LTRIM 47
2.3.11 LINDEX 48
2.3.12 LINSERT 49
2.3.13 RPOPLPUSH 49
2.4 Set類型 50
2.4.1 SADD 51
2.4.2 SREM 51
2.4.3 SMEMBERS 52
2.4.4 SCARD 52
2.4.5 SMOVE 53
2.4.6 SPOP 53
2.4.7 SRANDMEMBER 54
2.4.8 SINTER 55
2.4.9 SINTERSTORE 55
2.4.10 SUNION 56
2.4.11 SUNIONSTORE 56
2.4.12 SDIFF 57
2.4.13 SDIFFSTORE 57
2.5 Sorted Set類型 58
2.5.1 ZADD 58
2.5.2 ZREM 59
2.5.3 ZCARD 60
2.5.4 ZCOUNT 61
2.5.5 ZSCORE 61
2.5.6 ZINCRBY 62
2.5.7 ZRANGE 62
2.5.8 ZREVRANGE 63
2.5.9 ZREVRANGEBYSCORE 64
2.5.10 ZRANK 64
2.5.11 ZREVRANK 65
2.5.12 ZREMRANGEBYRANK 65
2.5.13 ZREMRANGEBYSCORE 66
2.5.14 ZINTERSTORE 67
2.5.15 ZUNIONSTORE 68
2.6 Redis HyperLogLog 69
2.6.1 Redis HyperLogLog
常用命令 69
2.6.2 Redis HyperLogLog實例 69
第3章 Redis常用命令 71
3.1 鍵值相關命令 71
3.1.1 KEYS 71
3.1.2 SCAN 72
3.1.3 EXISTS 73
3.1.4 DEL 73
3.1.5 EXPIRE 73
3.1.6 TTL 74
3.1.7 SELECT 74
3.1.8 MOVE 74
3.1.9 PERSIST 75
3.1.10 RANDOMKEY 75
3.1.11 RENAME 75
3.1.12 TYPE 76
3.2 服務器相關命令 76
3.2.1 PING 76
3.2.2 ECHO 76
3.2.3 QUIT 76
3.2.4 DBSIZE 76
3.2.5 INFO 77
3.2.6 MONITOR 79
3.2.7 CONFIG GET 80
3.2.8 FLUSHDB 80
3.2.9 FLUSHALL 80
第4章 Redis高級主題 81
4.1 服務器配置 81
4.1.1 Redis服務器允許遠程主機
訪問 81
4.1.2 客戶端遠程連接Redis
服務器 82
4.1.3 設置密碼 82
4.1.4 Redis端口修改 83
4.1.5 查看配置 84
4.1.6 修改配置 84
4.1.7 配置項說明 84
4.2 Redis事務 86
4.2.1 Redis事務的常用命令 86
4.2.2 簡單事務控制 87
4.2.3 取消一個事務 87
4.2.4 樂觀鎖控制復雜事務 88
4.3 Redis發(fā)布和訂閱 90
4.3.1 Redis發(fā)布和訂閱的
常用命令 90
4.3.2 Redis發(fā)布和訂閱實例 90
4.4 Redis管道 91
4.5 數(shù)據(jù)備份與恢復 92
4.6 Redis性能測試 93
4.7 Redis客戶端連接 94
4.8 Redis服務開機自啟動 94
4.8.1 Windows下Redis服務
開機自啟動 95
4.8.2 Linux下Redis服務
開機自啟動 96
4.9 Redis內(nèi)存分析工具 97
第5章 Redis緩存的持久化 99
5.1 持久化機制 99
5.1.1 配置RDB 100
5.1.2 配置AOF 101
5.2 Redis過期key清除策略 103
第6章 Redis集群環(huán)境部署 105
6.1 主從復制 105
6.1.1 Redis主從復制原理 106
6.1.2 Redis主從復制安裝過程 106
6.1.3 Redis測試主從復制關系 108
6.2 哨兵模式 109
6.2.1 災備切換Sentinel的使用 109
6.2.2 Redis Sentinel的安裝與
配置 111
6.2.3 測試主從切換 116
6.3 Redis集群 118
6.3.1 Redis集群環(huán)境 118
6.3.2 開始Redis集群搭建 119
6.3.3 Redis集群代理 125
6.3.4 Redis集群特點 128
6.3.5 新增Redis集群節(jié)點 130
6.3.6 刪除Redis集群節(jié)點 139
第7章 Redis開發(fā)實戰(zhàn) 142
7.1 搭建開發(fā)Redis的Java
開發(fā)環(huán)境 142
7.1.1 在Windows下安裝Java 8 142
7.1.2 安裝Tomcat 9 145
7.1.3 搭建IntelliJ IDEA
開發(fā)環(huán)境 146
7.2 使用Java操作Redis 147
7.2.1 連接Redis的兩種方式 147
7.2.2 操作String 150
7.2.3 操作Map 151
7.2.4 操作List 152
7.2.5 操作Set 153
7.2.6 排序 153
7.2.7 Redis存儲圖片 154
7.2.8 Redis存儲Object 158
7.2.9 Redis存儲和計算用戶
訪問量 161
7.3 Redis調(diào)用方式 162
7.3.1 普通同步 162
7.3.2 事務 162
7.3.3 管道 163
7.3.4 管道中調(diào)用事務 163
7.4 Redis集群與Java 164
7.5 實例1:使用Redis獲取用戶的
共同好友 164
7.5.1 初始化數(shù)據(jù) 165
7.5.2 使用Jedis獲取用戶的
共同好友 165
7.6 實例2:在Tomcat上使用Redis
保存Session 166
7.6.1 分布式Session 166
7.6.2 持久化Tomcat Session到
Redis 167
7.6.3 安裝服務器 Tomcat和反向
代理服務器Nginx 168
7.6.4 配置Tomcat集群 173
7.6.5 配置Tomcat使用Redis
管理Session 177
第8章 Spring Boot與Redis
整合應用 179
8.1 Spring Boot項目搭建與Redis
整合應用 179
8.1.1 Spring Boot簡介 179
8.1.2 使用Spring Initializr
新建項目 180
8.1.3 Spring Boot結合Redis
實戰(zhàn) 184
8.2 RedisTemplate API詳解 186
8.2.1 寫入和讀取緩存 186
8.2.2 添加和獲取散列數(shù)據(jù) 187
8.2.3 添加和獲取列表數(shù)據(jù) 188
8.2.4 添加和獲取集合數(shù)據(jù) 188
8.2.5 添加和獲取有序集合數(shù)據(jù) 188
8.2.6 優(yōu)化控制器 189
8.3 Spring Boot集成Spring Session 190
8.3.1 配置Spring Boot項目 190
8.3.2 創(chuàng)建配置類和控制器類 191
8.3.3 編譯和部署項目 193
第9章 Redis監(jiān)控 196
9.1 Redis監(jiān)控指標 196
9.1.1 使用INFO命令 196
9.1.2 使用redis-stat 206
9.2 自定義監(jiān)控 208
9.2.1 前端頁面 210
9.2.2 WebSocket與消息推送 215
9.2.3 創(chuàng)建控制器類 220
9.2.4 業(yè)務邏輯 222
9.2.5 常用工具類 226
第10章 Redis的緩存設計與優(yōu)化 230
10.1 Redis緩存的優(yōu)點和缺點 230
10.2 緩存雪崩 231
10.3 緩存穿透 231
10.4 布隆過濾器 232
10.4.1 布隆過濾器簡介 232
10.4.2 Redis加載布隆過濾器
模塊 233
10.4.3 在項目中使用布隆
過濾器 236
第11章 擴展知識 237
11.1 配置CentOS 7 237
11.1.1 關閉防火墻 237
11.1.2 配置國內(nèi)yum倉庫 238
11.2 Maven基礎知識 239
11.2.1 Maven的基本概念 239
11.2.2 Maven下載 240
11.2.3 Maven安裝 241
11.2.4 修改從Maven中心倉庫
下載到本地的JAR包的
默認存儲位置 242
11.2.5 Maven的簡單使用 244
11.2.6 pom.xml文件中的groupId
和artifactId到底該怎么
定義 244
11.2.7 常用Maven命令 244
11.3 配置IntelliJ IDEA 245
11.3.1 配置JDK 245
11.3.2 配置Maven 247
11.3.3 配置Tomcat 249
11.3.4 創(chuàng)建簡單的Maven項目 250
11.3.5 導入Maven項目進行
配置 253
11.4 使用VMware 254
11.4.1 配置虛擬機的靜態(tài)IP
地址 254
11.4.2 恢復網(wǎng)絡設置 255
11.4.3 重新生成虛擬機網(wǎng)卡的
MAC地址 255
11.5 配置SecureCRT 256
11.5.1 設置打開的連接顯示在
一個頁面 257
11.5.2 傳輸文件和下載文件 257
11.5.3 顯示中文 258
11.6 Chrome的常用技巧 259
11.6.1 打開開發(fā)者工具控制臺 259
11.6.2 基本輸出 259
11.6.3 Chrome禁用緩存 260
11.7 使用Python 3操作Redis
集群 260
11.7.1 在Windows下安裝
Python 3 260
11.7.2 在Linux下安裝Python 3 266
11.7.3 使用Redis模塊 267