《Redis入门指南》是一本Redis的入门指导书籍,以通俗易懂的方式介绍了Redis基础与实践方面的知识,包括历史与特性、在开发和生产环境中部署运行Redis、数据类型与命令、使用Redis实现队列、事务、复制、管道、持久化、优化Redis存储空间等内容,并采用任务驱动的方式介绍了PHP、Ruby、Python和Node.js这4种语言的Redis客户端库的使用方法。
《Redis入门指南》的目标读者不仅包括Redis的新手,还包括那些已经掌握Redis使用方法的人。对于新手而言,《Redis入门指南》的内容由浅入深且紧贴实践,旨在让读者真正能够即学即用;对于已经了解Redis的读者,通过《Redis入门指南》的大量实例以及细节介绍,也能发现很多新的技巧。
第1章 简介 1
1.1 历史与发展 1
1.2 特性 2
1.2.1 存储结构 2
1.2.2 内存存储与持久化 3
1.2.3 功能丰富 3
1.2.4 简单稳定 4
第2章 准备 7
2.1 安装Redis 7
2.1.1 在POSIX系统中安装 7
2.1.2 在OS X系统中安装 8
2.1.3 在Windows中安装 9
2.2 启动和停止Redis 11
2.2.1 启动Redis 11
2.2.2 停止Redis 14
2.3 Redis命令行客户端 14
2.3.1 发送命令 14
2.3.2 命令返回值 15
2.4 配置 16
2.5 多数据库 17
第3章 入门 19
3.1 热身 19
3.2 字符串类型 21
3.2.1 介绍 22
3.2.2 命令 22
3.2.3 实践 26
3.2.4 命令拾遗 28
3.3 散列类型 32
3.3.1 介绍 33
3.3.2 命令 34
3.3.3 实践 37
3.3.4 命令拾遗 39
3.4 列表类型 40
3.4.1 介绍 41
3.4.2 命令 41
3.4.3 实践 44
3.4.5 命令拾遗 46
3.5 集合类型 48
3.5.1 介绍 48
3.5.2 命令 49
3.5.3 实践 52
3.5.4 命令拾遗 54
3.6 有序集合类型 57
3.6.1 介绍 57
3.6.2 命令 58
3.6.3 实践 62
3.6.4 命令拾遗 63
第4章 进阶 67
4.1 事务 67
4.1.1 概述 68
4.1.2 错误处理 69
4.1.3 WATCH命令介绍 70
4.2 生存时间 72
4.2.1 命令介绍 73
4.2.2 实现访问频率限制之一 75
4.2.3 实现访问频率限制之二 76
4.2.4 实现缓存 77
4.3 排序 78
4.3.1 有序集合的集合操作 78
4.3.2 SORT命令 79
4.3.3 BY参数 81
4.3.4 GET参数 83
4.3.5 STORE参数 84
4.3.6 性能优化 85
4.4 消息通知 85
4.4.1 任务队列 86
4.4.2 使用Redis实现任务队列 87
4.4.3 优先级队列 88
4.4.4 “发布/订阅”模式 90
4.4.5 按照规则订阅 91
4.5 管道 92
4.6 节省空间 93
4.6.1 精简键名和键值 94
4.6.2 内部编码优化 94
第5章 实践 103
5.1 PHP与Redis 103
5.1.1 安装 104
5.1.2 使用方法 104
5.1.3 简便用法 105
5.1.4 实践:用户注册登录功能 107
5.2 Ruby与Redis 111
5.2.1 安装 111
5.2.2 使用方法 111
5.2.3 简便用法 112
5.2.4 实践:自动完成 112
5.3 Python与Redis 116
5.3.1 安装 116
5.3.2 使用方法 116
5.3.3 简便用法 117
5.3.4 实践:在线的好友 117
5.4 Node.js与Redis 123
5.4.1 安装 123
5.4.2 使用方法 123
5.4.3 简便用法 125
5.4.4 实践:IP地址查询 127
第6章 脚本 131
6.1 概览 131
6.1.1 脚本介绍 132
6.1.2 实例:访问频率限制 132
6.2 Lua语言 133
6.2.1 Lua语法 134
6.2.2 标准库 143
6.2.3 其他库 146
6.3 Redis与Lua 147
6.3.1 在脚本中调用Redis命令 147
6.3.2 从脚本中返回值 148
6.3.3 脚本相关命令 148
6.3.4 应用实例 149
6.4 深入脚本 152
6.4.1 KEYS与ARGV 152
6.4.2 沙盒与随机数 153
6.4.3 其他脚本相关命令 154
6.4.4 原子性和执行时间 155
第7章 管理 157
7.1 持久化 157
7.1.1 RDB方式 157
7.1.2 AOF方式 159
7.2 复制 161
7.2.1 配置 161
7.2.2 原理 163
7.2.3 图结构 164
7.2.4 读写分离 165
7.2.5 从数据库持久化 165
7.3 安全 166
7.3.1 可信的环境 166
7.3.2 数据库密码 166
7.3.3 命名命令 167
7.4 通信协议 167
7.4.1 简单协议 167
7.4.2 统一请求协议 169
7.5 管理工具 170
7.5.1 redis-cli 170
7.5.2 phpRedisAdmin 171
7.5.3 Rdbtools 173
附录A Redis命令属性 175
A.1 REDIS_CMD_WRITE 175
A.2 REDIS_CMD_DENYOOM 177
A.3 REDIS_CMD_NOSCRIPT 178
A.4 REDIS_CMD_RANDOM 179
A.5 REDIS_CMD_SORT_FOR_SCRIPT 179
A.6 REDIS_CMD_LOADING 179
附录B 配置参数索引 181
《景观社会的图像:20世纪90年代以来的欧洲绘画研究》内容简介:本书以欧洲当代绘画为研究对象,将景观社会中的图像与绘画进行横向
《软件自动化测试实战解析:基于Python3编程语言》内容简介:本书尽量用生活化的场景来描述编程场景,避免正确但是晦涩的表达,避免
数据库技术基础及应用第2版 内容简介 本书主要介绍数据库技术的基础及应用。全书共分14章,内容由浅入深、循序渐进,逻辑性强。在理论基础方面,本书从数据管理与数据...
HeadFirstSQLisaboutRDBMS(databases)specificallymySQL(version5.0ornewer)andinclud...
《无线通信与移动通信中信号处理研究的新进展》总结了近年来通信信号处理领域的最新研究成果,概括地讨论了通信信号处理中最具特
大数据背后的核心技术 本书特色 本书分为三大部分,分别为大数据基础理论分析、基于海量语意规则的大数据流处理技术及大数据应用。 *部分介绍大数据领域的主要基础理论...
“对于那些想要在PHP方面更进一步的开发者而言,此书必不可少。”——GabrielMalkas,Developpez.com“简而言之,这是我所读过的
《Java开发实战经典(名师讲坛)》是一本综合讲解Java核心技术的书籍,在书中使用大量的代码及案例进行知识点的分析与运用,并且给
在《首饰的秘密》中,女人们向我们讲述她们的首饰——她们何时并如何得到,怎么佩戴,而它们又代表着什么——我们事实上在邀请她
《21天学通JavaWeb开发》是JavaWeb开发的基础教程,针对没有接触过或还不是特别熟悉JavaWeb开发的读者,详细介绍了JavaWeb开发的
《AWS助理架构师认证备考宝典》内容简介:本书是一本以AWS认证解决方案架构师一助理级考试的考试大纲为核心,结合作者多年AWS系统设
电子基础与维修工具核心教程-(附光盘) 内容简介 田佰涛编著的《电子基础与维修工具核心教程( 附光盘)》用通俗易懂的语言和图文并茂的形式介绍 了电器产品维修中的...
CarloM.Cipolla(August15,1922–September5,2000)wasanItalianeconomichistorian.Hewas...
本书内容包括:背景、DNS是如何工作的、建立BIND、DNS和电子邮件、培植主机、维护BIND、扩展你的域、用解析器和名字服务器的库例
《中国工艺美学史》包括主体人、人与自然、道与器、生活需要、物的功能、功能与装饰等方面,这是对中国工艺美学的本质的剖析,反
《第三种创新》的作者罗伯托•维甘提是创新管理权威专家,米兰理工大学管理学院与设计学院教授,关于意大利设计管理的研究荣获意
《PythonUNIX和Linux系统管理指南》介绍了Python语言如何为管理uNIx和Linux服务器提供各种更加有效的任务处理方式。书中各章都提
标准C语言指南-基于ISO/IEC 9899:2011 内容简介 本书基于C语言的*新标准ISO/IEC 9899:2011,力求全面地介绍这门计算机语言的各个...
作为一本介绍PHP高级开发技术的书籍,本书并不像一般介绍PHP语言的书籍那样讲述大量的语法规则,罗列大量的函数,而是着眼于PHP在
《Web网页设计创意课》将呈现创建精彩绝伦的Web应用所需要的一切。这本《Web网页设计创意课》里的所有素材都来源于创作者的网站,