Redis之父全力推荐,一份超完美深入浅出Redis实战书籍

Redis的由来

来自Reids之父的Salvatore Sanfilippo的自述。

Redis 是我在大约3年前为了解决一个实际问题而创造出来的:简单来说,当时我在尝试做一件使用硬盘存储关系数据库( on-disk SQL database )无法完成的事情——在一台我能够支付得起的小虚拟机上面处理大量写入负载。

我要解决的问题在概念上并不复杂:多个网站会通过一个小型的JavaScript 追踪器( tracker )连续不断地向我的服务器发送页面访问记录(pageview),而我的服务器需要为每个网站保存一定数量的最新页面访问记录,并通过网页将这些记录实时地展示给用户观看。

在最大负载达到每秒数千条页面记录的情况下,无论我使用什么样的数据库模式( schema ),无论我如何进行优化,我所使用的关系数据库都没办法在这个小虚拟机上处理如此大的负载。因为囊中羞涩,我没办法对虚拟机进行升级,并且我觉得应该有更简单的方法来处理一个由推人值组成的列表。最终,我决定自己写一个实验性质的内存数据库原型( prototype),这个数据库使用列表作为基本数据类型,并且能够对列表的两端执行常数时间复杂度的弹出(pop) 和推入( push)操作。长话短说吧,这个内存数据库的想法的确奏效了,于是我用C语言重写了最初的数据库原型,并给它加上了基于子进程实现的持久化特性,Redis 就这样诞生了。

堪称完美!阿里内部分享深入浅出Redis实践笔记,肝完变强大

Redis始于实用主义——它是一个程序员因为找不到合适的工具来解决手头上的问题而发明的,这是我认为理论性书籍无法很好地介绍Redis 的原因,这也是我喜欢《Redis实战)( Redis in Action)的原因:这本书是为那些想要解决问题的人而写的,它没有乏味地介绍API,而是通过一系列引人入胜的例子深入地探究了Redis 的各项特性以及数据类型。

堪称完美!阿里内部分享深入浅出Redis实践笔记,肝完变强大

本书的内容

第1章 对Redis进行了基本介绍,列举了Redis提供的5种数据结构,对比了Redis与其他数据库之间的相同之处和不同之处,实现了一个可以对文章进行投票的简单文章聚合网站。

堪称完美!阿里内部分享深入浅出Redis实践笔记,肝完变强大

堪称完美!阿里内部分享深入浅出Redis实践笔记,肝完变强大

第2章 介绍了如何使用Redis来提升应用程序的性能以及如何使用Redis来实现基本的网络分析。不太了解Redis的读者应该会从第2章开始逐渐明白Redis在最近几年变得越来越流行的原因一因为它简单易用, 而且性能强劲。

堪称完美!阿里内部分享深入浅出Redis实践笔记,肝完变强大

堪称完美!阿里内部分享深入浅出Redis实践笔记,肝完变强大

第3章 基本上是一个命令文档,它陆续介绍了Redis 的常用命令、基本事务命令、排序命令和过期时间命令,并给出了这些命令的使用示例。

堪称完美!阿里内部分享深入浅出Redis实践笔记,肝完变强大

堪称完美!阿里内部分享深入浅出Redis实践笔记,肝完变强大

第4章 介绍了数据持久化、性能测试、故障恢复以及防止数据丢失等概念。这一章前几节介绍的内容都是和Redis管理有关的,而之后的4.4节和4.5节则深入地讨论了Redis 事务和流水线命令的性能。Redis 新手和中级Redis 用户都应该阅读4.4节和4.5节,因为本书在之后的章节里面会再次回顾这两节提到的问题。

堪称完美!阿里内部分享深入浅出Redis实践笔记,肝完变强大

堪称完美!阿里内部分享深入浅出Redis实践笔记,肝完变强大

第5章 介绍了将Redis用作数据库,并使用它来实现日志、计数器、IP所属地查找程序和服务配置程序的方法。

堪称完美!阿里内部分享深入浅出Redis实践笔记,肝完变强大

堪称完美!阿里内部分享深入浅出Redis实践笔记,肝完变强大

第6章 介绍了一-些对于规模日益增长的应用程序非常有用的组件,比如自动补全、加锁、任务队列、消息传递以及文件分发。

堪称完美!阿里内部分享深入浅出Redis实践笔记,肝完变强大

堪称完美!阿里内部分享深入浅出Redis实践笔记,肝完变强大

第7章 深入研究了一系列与搜索有关的问题和解决方案,它们可能会改变读者对于数据查询和数据过滤的看法。

堪称完美!阿里内部分享深入浅出Redis实践笔记,肝完变强大

堪称完美!阿里内部分享深入浅出Redis实践笔记,肝完变强大

第8章 详细地说明了如何构建一一个类似Twitter的社交网站,并给出了包括流API在内的整个网站后端实现。

堪称完美!阿里内部分享深入浅出Redis实践笔记,肝完变强大

堪称完美!阿里内部分享深入浅出Redis实践笔记,肝完变强大

第9章 讨论了扩展Redis时会用到的内存优化技术,其中包括结构分片方法以及短结构的使用方法。

堪称完美!阿里内部分享深入浅出Redis实践笔记,肝完变强大

堪称完美!阿里内部分享深入浅出Redis实践笔记,肝完变强大

第10章 介绍了对Redis进行水平分片和主从复制的方法。当一台服务器不足以满足需求的时候,这两项特性可以提供更强劲的性能以及更多的可用内存。

堪称完美!阿里内部分享深入浅出Redis实践笔记,肝完变强大

堪称完美!阿里内部分享深入浅出Redis实践笔记,肝完变强大

第11章 介绍了如何通过Lua脚本编程在服务器端对Redis的功能进行扩展,并在某些场景下把Lua脚本用作提升性能的方法。

堪称完美!阿里内部分享深入浅出Redis实践笔记,肝完变强大

堪称完美!阿里内部分享深入浅出Redis实践笔记,肝完变强大

附录A 介绍了如何在Linux、Os X和Windows这3种不同的平台上安装Redis、Python 以及Python的Redis客户端。

堪称完美!阿里内部分享深入浅出Redis实践笔记,肝完变强大

附录B 是一个参考手册,它列出了各种在使用Redis时可能会有用的资源,比如本书用到的Python语法结构的文档,一些Redis使用案例,用于完成各种任务的第三方Redis库,诸如此类。

堪称完美!阿里内部分享深入浅出Redis实践笔记,肝完变强大

这份Redis实战笔记总共为303页,需要完整版的朋友,可以以下方式来获取!!

堪称完美!阿里内部分享深入浅出Redis实践笔记,肝完变强大

本书封面插图的标题为“一介草民" ( A Man of the People ),这幅插图取自19世纪法国再版的地区服饰风俗四卷汇编( four-volume compendium of regional dress customs),作者是Sylvain Marechal。同样地,在这个难以分辨不同计算机书籍的时代,作者希望将两个世纪前丰富多彩的地区生活融入本书封面,以此来赞美计算机行业不断创新和敢为人先的精神。

猜你喜欢

转载自blog.csdn.net/JavaBye/article/details/109200218