Redis实战pdf完整版
分享到:
互联网博大精深,里面有各种专业词汇,刚开始小编也不知道Redis是什么意思,直到接触到了Redis实战这本书才逐渐了解到,Redis是一个开源的使用ANSIC语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。而且Redis不仅是一个key-value存储系统更是一个高性能的key-value数据库。接下来小编将引出今天的主题。Redis实战非常的详细地介绍了Redis的5种数据类型,并通过多个实用示例向我们展示了Redis的用法。不仅如此,Redis实战还描述了Redis的优化方法以及扩展方法,是一本对于学习和使用Redis来说非常棒的参考书籍。Redis实战一共由三个部分组成。首部分对Redis进行了介绍,说明了Redis的基本使用方法、它拥有的5种数据结构以及操作这5种数据结构的命令,并讲解了如何使用Redis去构建文章展示网站、cookie、购物车、网页缓存、数据库行缓存等一系列操作。第二部分对Redis命令进行了更加详细的介绍,并展示了怎么使用Redis去构建更为繁杂的辅助工具和应用程序,并且在结尾向大家展示了怎样使用Redis去构建一个简单的社交网站。第三部分对Redis用户老是会遇到的一些问题进行了介绍,讲解了降低Redis内存占用的方法、扩展Redis性能的方法以及使用Lua语言进行脚本编程的方法。Redis实战非常适合需要熟悉数据库概念的开发者。而且阅读本书既不要求读者预先了解NoSQL数据库概念,也不要求读者有任何Redis使用经验。并且具备编程能力的系统管理员也可以阅读。有需要的朋友欢迎来3322软件站免费下载阅读。
作 者:[美]约西亚 L.卡尔森(Josiah L. Carlson)ISBN:9787115402844
出版社:人民邮电出版社
出版时间:2015年11月
版次:第1版
字数:395千字
页数:281页
印刷时间:2015年11月
开本:16开
印次:1
包装:平装
译者简介
黄健宏(huangz),男,1990年出生,目前是程序员、技术图书作者和译者。著有《Redis设计与实现》,翻译了《Redis命令参考》《Disque使用教程》等技术文档。想要了解更多关于黄健宏的信息,请访问他的个人网站huangz.me。
Redis实战对Redis本身以及它的键值对模型进行了介绍,读者将接触到包括缓存、分布式广告定向等实际使用案例,学到如何从小型的作业任务开始,扩展Redis以适应大规模的数据集,以及如何与其他传统的关系数据库或是其他NoSQL存储系统进行集成。有经验的开发者应该会对集群和服务器脚本编程等较为深入的内容感兴趣。
Redis实战主要内容
全面介绍Redis
预处理实时数据
管理内存数据集
发布/订阅及配置
持久化到磁盘
——摘自“Redis之父”Salvatore Sanfilippo为本书写的序
“书中介绍的示例都来源于真实的使用案例,这是本书的一个主要优点。”
——Filippo Pacini,SG咨询公司
“本书通过真实而全面的示例,帮助读者从新手成长为专家。”
——Felipe Gutierrez,VMware/Spring Source公司
“这本书提供了极佳的深入分析以及富有洞察力的真实案例。”
——Bobby Abraham,Integri有限责任公司
“此书自有黄金屋,此书自有颜如玉!”
——Leo Cassarani,Unboxed咨询公司
第一部分 入门
第1章 初识Redis 2
1.1 Redis简介 3
1.1.1 Redis与其他数据库和软件的对比 3
1.1.2 附加特性 4
1.1.3 使用Redis的理由 5
1.2 Redis数据结构简介 6
1.2.1 Redis中的字符串 7
1.2.2 Redis中的列表 9
1.2.3 Redis的集合 10
1.2.4 Redis的散列 11
1.2.5 Redis的有序集合 12
1.3 你好Redis 13
1.3.1 对文章进行投票 15
1.3.2 发布并获取文章 17
1.3.3 对文章进行分组 19
1.4 寻求帮助 21
1.5 小结 21
第2章 使用Redis构建Web应用 23
2.1 登录和cookie缓存 24
2.2 使用Redis实现购物车 28
2.3 网页缓存 29
2.4 数据行缓存 30
2.5 网页分析 33
2.6 小结 34
第二部分 核心概念
第3章 Redis命令 38
3.1 字符串 39
3.2 列表 42
3.3 集合 44
3.4 散列 46
3.5 有序集合 48
3.6 发布与订阅 52
3.7 其他命令 54
3.7.1 排序 54
3.7.2 基本的Redis事务 56
3.7.3 键的过期时间 58
3.8 小结 60
第4章 数据安全与性能保障 61
4.1 持久化选项 61
4.1.1 快照持久化 62
4.1.2 AOF持久化 66
4.1.3 重写/压缩AOF文件 67
4.2 复制 68
4.2.1 配置Redis的配置选项 69
4.2.2 Redis复制的启动过程 70
4.2.3 主从链 71
4.2.4 检验磁盘写入 72
4.3 处理系统故障 73
4.3.1 验证快照文件和AOF文件 74
4.3.2 更换故障主服务器 75
4.4 Redis事务 76
4.4.1 定义用户信息和用户包裹 77
4.4.2 将物品放到市场上销售 78
4.4.3 购买物品 80
4.5 非事务型流水线 82
4.6 关于性能方面的注意事项 85
4.7 小结 87
第5章 使用Redis构建支持程序 88
5.1 使用Redis来记录日志 88
5.1.1 **日志 89
5.1.2 常见日志 90
5.2 计数器和统计数据 91
5.2.1 将计数器存储到Redis里面 91
5.2.2 使用Redis存储统计数据 96
5.2.3 简化统计数据的记录与发现 98
5.3 查找IP所属城市以及国家 100
5.3.1 载入位置表格 100
5.3.2 查找IP所属城市 102
5.4 服务的发现与配置 103
5.4.1 使用Redis存储配置信息 103
5.4.2 为每个应用程序组件分别配置一个Redis服务器 104
5.4.3 自动Redis连接管理 106
5.5 小结 107
第6章 使用Redis构建应用程序组件 109
6.1 自动补全 109
6.1.1 自动补全*近联系人 110
6.1.2 通讯录自动补全 112
6.2 分布式锁 115
6.2.1 锁的重要性 116
6.2.2 简易锁 118
6.2.3 使用Redis构建锁 119
6.2.4 细粒度锁 122
6.2.5 带有超时限制特性的锁 124
6.3 计数信号量 126
6.3.1 构建基本的计数信号量 126
6.3.2 公平信号量 128
6.3.3 刷新信号量 131
6.3.4 消除竞争条件 132
6.4 任务队列 133
6.4.1 先进先出队列 133
6.4.2 延迟任务 136
6.5 消息拉取 139
6.5.1 单接收者消息的发送与订阅替代品 140
6.5.2 多接收者消息的发送与订阅替代品 141
6.6 使用Redis进行文件分发 145
6.6.1 根据地理位置聚合用户数据 146
6.6.2 发送日志文件 148
6.6.3 接收日志文件 149
6.6.4 处理日志文件 150
6.7 小结 152
第7章 基于搜索的应用程序 153
7.1 使用Redis进行搜索 153
7.1.1 基本搜索原理 154
7.1.2 对搜索结果进行排序 160
7.2 有序索引 162
7.2.1 使用有序集合对搜索结果进行排序 162
7.2.2 使用有序集合实现非数值排序 164
7.3 广告定向 166
7.3.1 什么是广告服务器? 167
7.3.2 对广告进行索引 167
7.3.3 执行广告定向操作 170
7.3.4 从用户行为中学习 174
7.4 职位搜索 180
7.4.1 逐个查找合适的职位 180
7.4.2 以搜索方式查找合适的职位 181
7.5 小结 182
第8章 构建简单的社交网站 184
8.1 用户和状态 185
8.1.1 用户信息 185
8.1.2 状态消息 186
8.2 主页时间线 187
8.3 关注者列表和正在关注列表 188
8.4 状态消息的发布与删除 191
8.5 流API 194
8.5.1 流API提供的数据 195
8.5.2 提供数据 196
8.5.3 对流消息进行过滤 199
8.6 小结 205
第三部分 进阶内容
第9章 降低内存占用 208
9.1 短结构 208
9.1.1 压缩列表表示 209
9.1.2 集合的整数集合编码 211
9.1.3 长压缩列表和大整数集合带来的性能问题 212
9.2 分片结构 214
9.2.1 分片式散列 215
9.2.2 分片集合 218
9.3 打包存储二进制位和字节 221
9.3.1 决定被存储位置信息的格式 221
9.3.2 存储打包后的数据 223
9.3.3 对分片字符串进行聚合计算 224
9.4 小结 226
第10章 扩展Redis 227
10.1 扩展读性能 227
10.2 扩展写性能和内存容量 230
10.2.1 处理分片配置信息 232
10.2.2 创建分片服务器连接装饰器 233
10.3 扩展复杂的查询 234
10.3.1 扩展搜索查询量 235
10.3.2 扩展搜索索引大小 235
10.3.3 对社交网站进行扩展 240
10.4 小结 247
第11章 Redis的Lua脚本编程 248
11.1 在不编写C代码的情况下添加新功能 248
11.1.1 将Lua脚本载入Redis 249
11.1.2 创建新的状态消息 251
11.2 使用Lua重写锁和信号量 254
11.2.1 使用Lua实现锁的原因 254
11.2.2 重写锁实现 255
11.2.3 使用Lua实现计数信号量 257
11.3 移除WATCH/MULTI/EXEC事务 258
11.3.1 回顾群组自动补全程序 259
11.3.2 再次对物品买卖市场进行改进 261
11.4 使用Lua对列表进行分片 263
11.4.1 分片列表的构成 263
11.4.2 将元素推入分片列表 265
11.4.3 从分片里面里面弹出元素 266
11.4.4 对分片列表执行阻塞弹出操作 267
11.5 小结 270
附录A 快速安装指南 271
附录B 其他资源和参考资料 279
为了产生一个能够随着时间流逝而不断减少的评分,程序需要根据文章的发布时间和当前时间来计算文章的评分,具体的计算方法为:将文章得到的支持票数量乘以一个常数,然后加上文章的发布时间,得出的结果就是文章的评分。
我们使用从UTC时区1970年1月1日到现在为止经过的秒数来计算文章的评分,这个值通常被称为Unix时间。之所以选择使用Unix时间,是因为在所有能够运行Redis的平台上面,使用编程语言获取这个值都是一件非常简单的事情。另外,计算评分时与支持票数量相乘的常量为432,这个常量是通过将一天的秒数(86400)除以文章展示一天所需的支持票数量(200)得出的:文章每获得一张支持票,程序就需要将文章的评分增加432分。
……
Redis实战禁用于商业用途!如果您喜欢《Redis实战》,请购买正版,谢谢合作。
爱学习,请到3322软件站 / 查找资源自行下载!
1、下载并解压,得出pdf文件
2、如果打不开本文件,请务必在3322软件站选择一款阅读器/zt/430.html下载
3、安装后,在打开解压得出的pdf文件
4、双击进行阅读
方法二:
1、在手机里下载3322软件站中的阅读器和百度网盘
2、直接将pdf传输到百度网盘
3、用阅读器打开即可阅读
Redis实战简介:
书 名:Redis实战作 者:[美]约西亚 L.卡尔森(Josiah L. Carlson)ISBN:9787115402844
出版社:人民邮电出版社
出版时间:2015年11月
版次:第1版
字数:395千字
页数:281页
印刷时间:2015年11月
开本:16开
印次:1
包装:平装
Redis实战作者简介:
Josiah L. Carlson博士既是一位经验丰富的数据库专家,也是一位活跃的Redis社区贡献者。译者简介
黄健宏(huangz),男,1990年出生,目前是程序员、技术图书作者和译者。著有《Redis设计与实现》,翻译了《Redis命令参考》《Disque使用教程》等技术文档。想要了解更多关于黄健宏的信息,请访问他的个人网站huangz.me。
Redis实战作者编辑推荐:
当你需要以接近实时的速度访问快速变动的数据流时,Redis这样的键值数据库就是你的极好选择。通过接纳散列、字符串、列表等多种数据类型,Redis对键值对模式进行了扩展,它既提供了极其快速的内存数据集操作,又可以在运行时轻松地将这些数据持久化到磁盘上面。除此之外,Redis还是免费的、开源的。Redis实战对Redis本身以及它的键值对模型进行了介绍,读者将接触到包括缓存、分布式广告定向等实际使用案例,学到如何从小型的作业任务开始,扩展Redis以适应大规模的数据集,以及如何与其他传统的关系数据库或是其他NoSQL存储系统进行集成。有经验的开发者应该会对集群和服务器脚本编程等较为深入的内容感兴趣。
Redis实战主要内容
全面介绍Redis
预处理实时数据
管理内存数据集
发布/订阅及配置
持久化到磁盘
Redis实战作者媒体评论:
“这本书对于Redis的生态系统非常有帮助。”——摘自“Redis之父”Salvatore Sanfilippo为本书写的序
“书中介绍的示例都来源于真实的使用案例,这是本书的一个主要优点。”
——Filippo Pacini,SG咨询公司
“本书通过真实而全面的示例,帮助读者从新手成长为专家。”
——Felipe Gutierrez,VMware/Spring Source公司
“这本书提供了极佳的深入分析以及富有洞察力的真实案例。”
——Bobby Abraham,Integri有限责任公司
“此书自有黄金屋,此书自有颜如玉!”
——Leo Cassarani,Unboxed咨询公司
Redis实战目录:
目录第一部分 入门
第1章 初识Redis 2
1.1 Redis简介 3
1.1.1 Redis与其他数据库和软件的对比 3
1.1.2 附加特性 4
1.1.3 使用Redis的理由 5
1.2 Redis数据结构简介 6
1.2.1 Redis中的字符串 7
1.2.2 Redis中的列表 9
1.2.3 Redis的集合 10
1.2.4 Redis的散列 11
1.2.5 Redis的有序集合 12
1.3 你好Redis 13
1.3.1 对文章进行投票 15
1.3.2 发布并获取文章 17
1.3.3 对文章进行分组 19
1.4 寻求帮助 21
1.5 小结 21
第2章 使用Redis构建Web应用 23
2.1 登录和cookie缓存 24
2.2 使用Redis实现购物车 28
2.3 网页缓存 29
2.4 数据行缓存 30
2.5 网页分析 33
2.6 小结 34
第二部分 核心概念
第3章 Redis命令 38
3.1 字符串 39
3.2 列表 42
3.3 集合 44
3.4 散列 46
3.5 有序集合 48
3.6 发布与订阅 52
3.7 其他命令 54
3.7.1 排序 54
3.7.2 基本的Redis事务 56
3.7.3 键的过期时间 58
3.8 小结 60
第4章 数据安全与性能保障 61
4.1 持久化选项 61
4.1.1 快照持久化 62
4.1.2 AOF持久化 66
4.1.3 重写/压缩AOF文件 67
4.2 复制 68
4.2.1 配置Redis的配置选项 69
4.2.2 Redis复制的启动过程 70
4.2.3 主从链 71
4.2.4 检验磁盘写入 72
4.3 处理系统故障 73
4.3.1 验证快照文件和AOF文件 74
4.3.2 更换故障主服务器 75
4.4 Redis事务 76
4.4.1 定义用户信息和用户包裹 77
4.4.2 将物品放到市场上销售 78
4.4.3 购买物品 80
4.5 非事务型流水线 82
4.6 关于性能方面的注意事项 85
4.7 小结 87
第5章 使用Redis构建支持程序 88
5.1 使用Redis来记录日志 88
5.1.1 **日志 89
5.1.2 常见日志 90
5.2 计数器和统计数据 91
5.2.1 将计数器存储到Redis里面 91
5.2.2 使用Redis存储统计数据 96
5.2.3 简化统计数据的记录与发现 98
5.3 查找IP所属城市以及国家 100
5.3.1 载入位置表格 100
5.3.2 查找IP所属城市 102
5.4 服务的发现与配置 103
5.4.1 使用Redis存储配置信息 103
5.4.2 为每个应用程序组件分别配置一个Redis服务器 104
5.4.3 自动Redis连接管理 106
5.5 小结 107
第6章 使用Redis构建应用程序组件 109
6.1 自动补全 109
6.1.1 自动补全*近联系人 110
6.1.2 通讯录自动补全 112
6.2 分布式锁 115
6.2.1 锁的重要性 116
6.2.2 简易锁 118
6.2.3 使用Redis构建锁 119
6.2.4 细粒度锁 122
6.2.5 带有超时限制特性的锁 124
6.3 计数信号量 126
6.3.1 构建基本的计数信号量 126
6.3.2 公平信号量 128
6.3.3 刷新信号量 131
6.3.4 消除竞争条件 132
6.4 任务队列 133
6.4.1 先进先出队列 133
6.4.2 延迟任务 136
6.5 消息拉取 139
6.5.1 单接收者消息的发送与订阅替代品 140
6.5.2 多接收者消息的发送与订阅替代品 141
6.6 使用Redis进行文件分发 145
6.6.1 根据地理位置聚合用户数据 146
6.6.2 发送日志文件 148
6.6.3 接收日志文件 149
6.6.4 处理日志文件 150
6.7 小结 152
第7章 基于搜索的应用程序 153
7.1 使用Redis进行搜索 153
7.1.1 基本搜索原理 154
7.1.2 对搜索结果进行排序 160
7.2 有序索引 162
7.2.1 使用有序集合对搜索结果进行排序 162
7.2.2 使用有序集合实现非数值排序 164
7.3 广告定向 166
7.3.1 什么是广告服务器? 167
7.3.2 对广告进行索引 167
7.3.3 执行广告定向操作 170
7.3.4 从用户行为中学习 174
7.4 职位搜索 180
7.4.1 逐个查找合适的职位 180
7.4.2 以搜索方式查找合适的职位 181
7.5 小结 182
第8章 构建简单的社交网站 184
8.1 用户和状态 185
8.1.1 用户信息 185
8.1.2 状态消息 186
8.2 主页时间线 187
8.3 关注者列表和正在关注列表 188
8.4 状态消息的发布与删除 191
8.5 流API 194
8.5.1 流API提供的数据 195
8.5.2 提供数据 196
8.5.3 对流消息进行过滤 199
8.6 小结 205
第三部分 进阶内容
第9章 降低内存占用 208
9.1 短结构 208
9.1.1 压缩列表表示 209
9.1.2 集合的整数集合编码 211
9.1.3 长压缩列表和大整数集合带来的性能问题 212
9.2 分片结构 214
9.2.1 分片式散列 215
9.2.2 分片集合 218
9.3 打包存储二进制位和字节 221
9.3.1 决定被存储位置信息的格式 221
9.3.2 存储打包后的数据 223
9.3.3 对分片字符串进行聚合计算 224
9.4 小结 226
第10章 扩展Redis 227
10.1 扩展读性能 227
10.2 扩展写性能和内存容量 230
10.2.1 处理分片配置信息 232
10.2.2 创建分片服务器连接装饰器 233
10.3 扩展复杂的查询 234
10.3.1 扩展搜索查询量 235
10.3.2 扩展搜索索引大小 235
10.3.3 对社交网站进行扩展 240
10.4 小结 247
第11章 Redis的Lua脚本编程 248
11.1 在不编写C代码的情况下添加新功能 248
11.1.1 将Lua脚本载入Redis 249
11.1.2 创建新的状态消息 251
11.2 使用Lua重写锁和信号量 254
11.2.1 使用Lua实现锁的原因 254
11.2.2 重写锁实现 255
11.2.3 使用Lua实现计数信号量 257
11.3 移除WATCH/MULTI/EXEC事务 258
11.3.1 回顾群组自动补全程序 259
11.3.2 再次对物品买卖市场进行改进 261
11.4 使用Lua对列表进行分片 263
11.4.1 分片列表的构成 263
11.4.2 将元素推入分片列表 265
11.4.3 从分片里面里面弹出元素 266
11.4.4 对分片列表执行阻塞弹出操作 267
11.5 小结 270
附录A 快速安装指南 271
附录B 其他资源和参考资料 279
Redis实战精彩文摘:
要构建一个文章投票网站,我们首先要做的就是为了这个网站设置一些数值和限制条件:如果一篇文章获得了至少200张支持票(upvote),那么网站就认为这篇文章是一篇有趣的文章;假如这个网站每天发布1000篇文章,而其中的50篇符合网站对有趣文章的要求,那么网站要做的就是把这50篇文章放到文章列表前100位至少一天;另外,这个网站暂时不提供投反对票(down.vote)的功能。为了产生一个能够随着时间流逝而不断减少的评分,程序需要根据文章的发布时间和当前时间来计算文章的评分,具体的计算方法为:将文章得到的支持票数量乘以一个常数,然后加上文章的发布时间,得出的结果就是文章的评分。
我们使用从UTC时区1970年1月1日到现在为止经过的秒数来计算文章的评分,这个值通常被称为Unix时间。之所以选择使用Unix时间,是因为在所有能够运行Redis的平台上面,使用编程语言获取这个值都是一件非常简单的事情。另外,计算评分时与支持票数量相乘的常量为432,这个常量是通过将一天的秒数(86400)除以文章展示一天所需的支持票数量(200)得出的:文章每获得一张支持票,程序就需要将文章的评分增加432分。
……
免责声明:
Redis实战来源于网络,仅用于分享知识,学习和交流!请下载完在24小时内删除。Redis实战禁用于商业用途!如果您喜欢《Redis实战》,请购买正版,谢谢合作。
爱学习,请到3322软件站 / 查找资源自行下载!
使用说明:
方法一:1、下载并解压,得出pdf文件
2、如果打不开本文件,请务必在3322软件站选择一款阅读器/zt/430.html下载
3、安装后,在打开解压得出的pdf文件
4、双击进行阅读
方法二:
1、在手机里下载3322软件站中的阅读器和百度网盘
2、直接将pdf传输到百度网盘
3、用阅读器打开即可阅读
展开更多
Redis实战pdf完整版下载地址
- 需先下载高速下载器:
- 专用下载:
- 其它下载: