Redis
Redis想必大家都听说过,不管是面试还是工作上我们都能见到。但是Redis到底能干什么?又不能干什么呢?(如下图)
为什么要用Redis?
上面说了Redis的一些使用场景,那么这些场景的解决方案也有很多其它选择,比如缓存可以用Memcache,Session共享还能用MySql来实现,消息队列可以用RabbitMQ,我们为什么—定要用Redis呢?为什么Redis明明是运维用得多为啥我们做开发也要精通?这两个问题想必很多人都不能准确地回答出来,但如果你看了LZ下面展示的这份Github一夜爆火的Redis入门到精通速成笔记之后,这些问题都会豁然开朗!
Redis速成笔记
源码篇
-
探索「字符串」,「字典」,「压缩列表」,「快速列表」,「跳跃列表」,「紧凑列表」,「基数树」内部结构
原理篇
-
线程IO模型、通信协议、持久化、管道、事务、PubSub、小对象压缩、主从同步
应用篇
-
分布式锁、延时队列、位图、、HyperLogLog、布隆过滤器、简单限、漏斗限流、GeoHash
集群篇
-
Codis、Cluster、Stream
拓展篇
-
Stream、lnfo 指令、再谈分布式锁、过期策略、LRU、懒惰删除、优雅地使用Jedis、保护Redis、Redis安全通信
-
配套视频精讲(篇幅限制展示部分)
-
课件脑图(篇幅限制展示部分)
最后
Redis 优势
- 性能极高 – Redis能读的速度是110000次/s,写的速度是81000次/s 。
- 丰富的数据类型 – Redis支持二进制案例的 Strings, Lists, Hashes, Sets 及 Ordered Sets 数据类型操作。
- 原子 – Redis的所有操作都是原子性的,意思就是要么成功执行要么失败完全不执行。单个操作是原子性的。多个操作也支持事务,即原子性,通过MULTI和EXEC指令包起来。
- 丰富的特性 – Redis还支持 publish/subscribe, 通知, key 过期等等特性。
Redis涉及的知识点是非常繁多的,虽然这份笔记已经扩充了不少Redis进阶和压箱底的内容,但还是无法顾及到Redis 的方方面面,我只能说真的不要小看一个Redis!