Redis 4.x Cookbook (中文版)
內容描述
Redis是一個十分熱門的內存數據庫,號稱後端的“瑞士軍刀”,它擁有諸多優良特性,已經被越來越多的公司採用,值得每一位Web開發者學習。通過本書講述的Redis在設計、開發和運維等方面的80多個實戰案例,讀者不僅可以由淺入深地學習到有關Redis的幾乎所有知識,還可以將案例中所講解的內容直接用於包括設計、開發和運維等在內的各類生產實踐。本書中的每一個案例、每一個案例中所涉及的各種知識、命令和工具等,均來自於作者一線企業級應用的總結;本書中總結的各類參數配置和故障診斷的案例等,也均來自於作者真實企業級運維工作的經驗。
目錄大綱
第1章開始使用Redis
1.1本章概要
1.2下載和安裝Redis
1.3啟動和停止Redis
1.4使用redis-cli連接到Redis
1.5獲取服務器信息.
1.6理解Redis事件模型
1.7理解Redis通信協議
第2章數據類型
2.1本章概要
2.2使用字符串(string)類型
2.3使用列表(list)類型
2.4使用哈希(hash)類型
2.5使用集合(set)類型
2.6使用有序集合(sorted set)類型
2.7使用HyperLogLog類型.
2.8使用Geo類型.
2.9鍵管理
第3章數據特性
3.1本章概要
3.2使用位圖(bitmap)
3.3設置鍵的過期時間
3.4使用SORT命令
3.5使用管道(pipeline)
3.6理解Redis事務(transaction)
3.7使用發布訂閱(PubSub)
3.8使用Lua腳本
3.9調試Lua腳本
第4章使用Redis進行開發
4.1本章概要
4.2 Redis常見應用場景
4.3使用正確的數據類型
4.4使用正確的API .
4.5使用Java連接到Redis
4.6使用Python連接到Redis
4.7使用Spring Data連接到Redis
4.8使用Redis編寫MapReduce作業
4.9使用Redis編寫Spark作業
第5章複製
5.1本章概要
5.2配置Redis的複制機制
5.3複製機制的調優
5.4複製機制的故障診斷
第6章持久化
6.1本章概要
6.2使用RDB
6.3探究RDB文件
6.4使用AOF
6.5探究AOF文件
6.6 RDB和AOF的結合使用.
第7章配置高可用和集群
7.1本章概要
7.2配置Sentinel
7.3測試Sentinel
7.4管理Sentinel
7.5配置Redis Cluster
7.6測試Redis Cluster
7.7管理Redis Cluster
第8章生產環境部署
8.1本章概要
8.2在Linux上部署Redis
8.3 Redis安全相關設置
8.4配置客戶端連接選項
8.5配置內存策略
8.6基準測試
8.7日誌
第9章管理Redis
9.1本章概要
9.2管理Redis服務器配置
9.3使用bin/redis-cli操作Redis
9.4備份和恢復
9.5監控內存使用情況
9.6管理客戶端
9.7數據遷移
第10章Redis的故障診斷
10.1本章概要
10.2 Redis的健康檢查
10.3使用SLOWLOG識別慢查詢
10.4延遲問題的故障診斷
10.5內存問題的故障診斷
10.6崩潰問題的故障診斷
第11章使用Redis模塊擴展Redis
11.1本章概要.
11.2加載Redis模塊
11.3編寫Redis模塊
第12章Redis生態系統
12.1本章概要
12.2 Redisson客戶端
12.3 Twemproxy
12.4 Codis—一個基於代理的高性能Redis集群解決方案
12.5 CacheCloud管理系統
12.6 Pika—一個與Redis兼容的NoSQL數據庫
附錄A Windows環境搭建
作者介紹
黃鵬程過去五年多一直在中國民生銀行(2017年在世界排名前1000名的銀行中位列29位)擔任軟件工程師及大數據基礎設施團隊的負責人,負責為整家銀行提供大數據基礎設施服務。同時,作為這家銀行的Redis技術負責人,他將大部分精力投入到了在生產環境中如何更好地使用Redis中。此外,他也是一名Redis貢獻者。王左非是一名居住在美國舊金山灣區的經驗豐富的軟件工程師。他有5年多的軟件行業經驗,曾參與過涉及很多不同技術的項目,目前在愛彼迎(Airbnb)工作。左非樂於學習新事物和分享知識,還喜歡在閒暇之余讀書、旅行和搗鼓無線電。
譯者簡介
梅隆魁,2013年碩士畢業於北京郵電大學計算機科學與技術專業嵌入式系統與網絡通信方向。畢業後就職於中國民生銀行總行信息科技部,主要從事J2EE企業級及分佈式系統的應用和架構設計開發及項目管理工作,業餘對嵌入式軟硬件、移動應用開發及Android移動安全也有所涉獵,是一名“會畫圓”且“能畫圓”的工程師。