Redis 深度历险:核心原理与应用实践!

Redis 是如今互联网技术架构中,使用最广泛的缓存。支持复杂的数据结构,支持持久化,支持主从集群,支持高可用,支持较大的value存储...

同时, Redis 也是中高级后端工程师技术面试中,面试官最喜欢问的问题之一。特别是那些优秀的、竞争激烈的大型互联网公司(比如 Twitter、新浪微博、阿里云、腾讯云、淘宝、知乎等),通常要求面试者不仅仅掌握 Redis 基础使用,更要求深层理解 Redis 内部实现的细节原理。毫不夸张地说,能把 Redis 的知识点全部吃透,你的半只脚就已经踏进心仪大公司的技术研发部。

然而,绝大部分开发者只会拿 Redis 做数据缓存,使用最简单的 get/set 方法,除此之外几乎一片茫然,对 Redis 内部实现的细节原理知之甚少。例如:

  • 有同学知道 Redis 的分布式锁,但完全不清楚其内部实现机制
  • 有同学知道 Redis 是单线程结构,但完全不理解 Redis 缘何单线程还可以支持高并发
  • 有同学知道 Redis 支持主从,但完全不晓得内部的实现机制
  • ...

于是,一位有着十年经验的互联网分布式高并发技术老兵,掌阅的后端专家钱文品(老钱 Github 地址: github.com/pyloque),撰写了一本小册子,梳理了自己多年 Redis 实践经验,以帮助更多工程师更快,更深入的了解 Redis 。

老钱在掌阅维护着上千个 Redis 实例的集群,他在 Redis 持久化,缓存,消息队列的各类实战经验,都毫无保留的凝聚到了这本小册子里。

小册分为五大部分:

一、Redis应用

  • 分布式锁、延时队列、位图、HyperLogLog、布隆过滤器、限流、GeoHash、Scan

二、Redis原理

  • IO现场模型、通信协议、持久化、管道、事务、PubSub、对象压缩、主从同步

三、Redis集群

  • Sentinel、Codis、Cluster

四、Reids拓展知识

  • Stream、Info命令、分布式锁、过期策略、LRU、懒删除、Jedis

五、Redis源码剖析

  • 字符串、字典、压缩列表、快速列表、跳跃列表、紧凑列表、基数树

这本小册,是迄今为止,对 Redis 最通俗,最全面,最理论结合实践的 Redis 资料。而且图文并茂,直观易懂,下面的动画大家感受一下。

原文发布于微信公众号 - Java后端技术(JavaITWork)

原文发表时间:2018-08-02

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏Crossin的编程教室

3分钟破译朋友圈测试小游戏

最近,朋友圈时不时会流行起某个测试类小游戏,比如你的性格图谱啦,你是三体中的哪个角色啦,你有什么超能力啦……昨天晚上在某个群里,又被一个测测你是什么书的小游戏刷...

4387
来自专栏java一日一条

这样的开源应用你相信它吗?

任何读过马修•加勒特作品的人都知道很多专门用来销售的软件是不靠谱的。一些Linux倡导者宣称开放自由而且免费的软件比封闭的专门用来谋利的软件更安全,然而这里有一...

511
来自专栏CSDN技术头条

我们如何使用Go打造了Uber QPS最高的服务

2015年初,我们建立了一个微服务来负责这项任务:地理围栏查找(geofence lookups),结果完成很出色。如今已过一年,这项技术在Uber数以百计的生...

27810
来自专栏运维

从软件部署看运维的四种境界

       首先,博文的名字很难取啊,叫什么都感觉不太对,这里就暂定这样吧。不可否认这里有点哗众取宠的动机,不谈境界总感觉格局不够大哈。

1762
来自专栏IT大咖说

做一个不背锅的运维

内容来源:作者:田逸(sery),来自:http://blog.51cto.com/sery/2162642

1514
来自专栏日常学python

程序员装X指南-用基于Python的命令行查天气预报

作为程序员,能用命令行来完成某些事情的坚决不用GUI,比如用命令行来抢火车票,甚至用命令行终端听音乐,这样在外行看起来有几分神秘感,还能俘获一批小白的芳心,看起...

1112
来自专栏FreeBuf

独家: iOS是如何收集用户的地理信息的

从央视的新闻里我们了解到这个故事应该从三年前讲起: 2011年两名英国的工程师发现苹果手机暗藏的一个文件可以记录苹果手机用户曾经去过的地理位置,并通过隐藏文件...

20010
来自专栏灯塔大数据

荐读|爬虫还在用Python?我与Node.js不得不说的故事

深夜闲来无事,默默的打开github,在搜索框中填入了”Stars:>1”,本想着依旧可以在第一页看到Spark的身影,结果第一个映入眼帘的是这个: ? 快速...

1K5
来自专栏PHP在线

顶级PHP大师的开发原则

1. 在合适的时候使用PHP – Rasmus Lerdorf 没有谁比PHP的创建者Rasmus Lerdorf明白PHP用在什么地方是更合理的,他于199...

4396
来自专栏IMWeb前端团队

如何选一个心仪的腾讯大王卡手机号

本文作者:IMWeb yisbug 原文出处:IMWeb社区 未经同意,禁止转载 最近淘了一个支持4G的iPad Pro,考虑买一个什么类型的流量卡比...

30810

扫码关注云+社区