Redis是互联网技术领域使用广泛的存储中间件,被很多大型互联网公司采用,同时也深受广大中小型公司的青睐。对Redis的了解和应用实践已成为当下中高级后端开发者绕不开的必备技能。
大数据时代的到来,使得传统数据库在处理业务应用时遇到性能上的瓶颈,用户体验很不乐观。如今海量数据的3V(Volume,数量;Ve1ocity,速度;Variety,多样)和3高(高并发、高性能、高可扩展)给传统数据库曾经非常成功的“一种架构支持多类应用”的模式带来了巨大的挑战。在互联网和大数据应用的冲击下,世界数据库格局在发生革命性的变化,从之前的SQL一统天下变成了SQL(MySQL、SQL Server、Oracle等)、NoSQL(Redis、Hbase、MongoDB等)、NewSQL(VoltDB、TiDB、Cosmos DB等)共同来支撑多类应用的局面。近两年,身边的同事、朋友和学生经常探讨一些与Redis相关的问题,让我对Redis的内部实现原理越来越感兴趣,并且一些问题开始频繁地出现在我的脑海中。
Redis到底有几种数据类型:5、8、10种?
Redis的底层数据结构是怎样的,各自又有什么特点?
Redis不同的数据结构使用场景是什么?
Redis到底会不会丢数据?在生产环境中怎么配置合理的持久化策略?
Redis的发布与订阅、Lua脚本、事务等特性到底是如何实现的?
Redis怎么实现分布式锁,其原理是怎么实现的?
Redis的主从、哨兵、集群各有什么特点,原理又是怎样的?
对于以上这些问题,网上充斥着各种各样的答案。基于这种情况,我决定系统地了解和深入研究Redis内部原理,于是阅读了大量Redis源代码,经过总结和思考之后才有了这本书的面世。
本书内容
本书提供深入浅出的实战案例和相关的背景知识,既包含Redis的各个方面,从Redis的基本数据类型开始,直到数据类型底层结构、事务、高可用、集群化、管理和高级主题;又通过大量的案例向读者展示有关Redis的相关知识,为许多常见的开发和维护问题提供开箱即用的解决方案,从而便于读者理解每个实战案例的关键知识点。此外,本书还提供了有关Redis内部工作原理的相关基本信息和必要的解释。读者越是深入了解Redis的工作原理,就越能对工程中所涉及的权衡作出合理的决定。下面图片是本书目录部分。
二、写作特点
本书运用了文字语言、图表语言和编程语言三种不同的“语言”来讲述每一个主题。俗话说,“一图胜千言”,我在每一章节中都精心设计了很多图表,这些图表能够帮助读者朋友们更容易地理解技术模块、执行流程和交互方式。而且本书还提供了数以百计的实例代码,这些实例具有不同的作用,它们有的是为了演示某个实用的编程技巧或者最佳实践,有的是为了强调一些容易忽视但很重要的技术细节,还有的是为了证明所述的论点。
三、目标读者
本书面向的是希望开始使用Redis或加深对其认知的后端开发人员以及架构师,所有对Redis感兴趣的开发与运维人员阅读和参考。
正如书中前言所说,本书采用的“渐进式”的写作方式,即使对于那些完全没有接触过Redis的开发人员,都会很容易通过本书深入并系统掌握这门技术。由于本书提供的大部分内容都是独一无二的,即使是非常资深的开发设计人员,我相信也能在书中找到很多不甚了解的盲点。
四、本书部分内容截图
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)