《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
《暑期社会调查报告优秀作品集(2019)》内容简介:本书为南京理工大学马克思主义学院“毛泽东思想与中国特色社会主义理论体系概论
《山海经里的博物学:羽门馆》内容简介:大奇和小遇是一对热爱动物的兄妹。有一天,爸爸妈妈领着他们参观野生动物园,在一阵野鸭鸣
《装帧之美》由日本设计大师铃木成一亲自挑选在他长达近三十年的设计生涯、八千件的作品中,最具代表性的一百二十件作品,并且详
《健康延长线》内容简介:本书紧扣“长寿之道在于科学健身,健身之道在于知行同步”的主题,围绕健身的四大要素———睡眠、饮食、
《哲学的中国本土化叙事》内容简介:《哲学的中国本土化叙事》怀着一种积极而开放的情怀探索并追寻本土化的“中国哲学”。“中国哲
《人气编辑眼中的百种好书》内容简介:由上海市新闻出版局、上海市编辑学会共同主办的“书香上海·沪上优秀青年编辑新春荐书”活动
《季羡林谈国学(新版)》内容简介:★几代人共读的文化通识读本! 季羡林六十多年学术生涯的体悟与沉思,与你分享。★季羡林文化随
本书是计算理论方面的优秀教材之一,包括上下文无关文法、上下文无关文法范式、有限自动机、正则语言的性质、下推自动机和上下文
《趣学Python——教孩子学编程》内容简介:Python是一款解释型、面向对象、动态数据类型的高级程序设计语言。Python语法简捷而清晰
《我们关于外间世界的知识》内容简介:《我们关于外间世界的知识》是罗素的经典著作之一,也是分析哲学的经典之作。起初,是罗素为
Updatedandrevisedtoreflectchangestocascadingstylesheets(CSS)developmentprocedure...
统计表明,所有效率低下的组织都有一个共性:员工没有归属感!有归属感的员工有责任心、有归属感的员工执行力强、有归属感的员
《最美的季节去最美的地方》内容简介:时光匆匆,四季轮回,大自然总会带给我们不一样的惊喜。我国地大物博,旅游资源丰富,在不同
《抗战时期的金陵大学》内容简介:本书以抗战时局影响下金陵大学的迁变与调适为研究主题,通过对其早期的调适与发展、抗战西迁与南
《绿色经典·名山大川——山川散文选》内容简介:什么是经典?常念为经,常数为典。经典就是经得起重复。常被人想起,不会忘记。依
ArcGIS Engine开发从入门到精通 本书特色 本书是一本指导读者快速入门ArcGIS Engine并提高的书籍,着重介绍了ArcGIS Engine的基...
非光滑控制理论与应用 本书特色 从方法的对象来看,与传统控制律相比,非光滑控制律的适用范围不同,正如李世华和丁世宏等编著的《非光滑控制理论与应用》中将提...
用户故事与敏捷方法 本书特色 《用户故事与敏捷方法》:敏捷大师Mike Cohn的软件需求方法圣经,小型团队(项目)不可或缺的敏捷开发宝典,亚马逊五星级长销图书...
Linux初步 本书特色 《Linux初步》由多位从事Linux课程教学一线的老师梁平、张兵、刘涛根据多年的教学和研究经验总结编写而成。本书力求用通俗易懂的语言...
《这样玩微信,赚钱赚人气》内容简介:如今,月活跃用户突破10亿大关的微信已成为名副其实的全民应用,甚至出现了“移动互联网=微信