文章目录
Redis八个特性
-
速度快
原因:
① 单线程,避免了多线程竞争(如加锁/解锁)的时间开销
② redis的数据存放在内存中
③ 使用C语言编写,C语言更方便操做硬件
④ Redis 源码优秀
-
利用键值对存储数据
Redis 利用
Key = Value
的形式构建储数据,Redis有五种基础的数据结构,它们分别为:字符串(string)、哈希(hash)、列表(list)、集合(set)、有序集合(ordered set /zet ) , 并在这些基础的数据结构之上演变出了其他类型 。 -
客户端语言种类多
-
支持持久化
将内存中的数据存储到外存中
-
支持主从复制
-
简单稳定
Redis 本身代码量相对少,故客户端开发、功能开发相对容易, 出现漏洞的可能性低 。
-
支持分布式 ,提高了可用性
-
其他功能丰富
①提供了键过期功能,可以⽤来实现缓存。
②提供了发布订阅功能,可以⽤来实现消息系统。
③⽀持 Lua 脚本功能,可以利⽤ Lua 创造出新的 Redis 命令。
④提供了简单的事务功能,能在⼀定程度上保证事务特性。
⑤提供了流⽔线(Pipeline)功能,这样客⼾端能将⼀批命令⼀次性传到 Redis,减少了⽹络的开
销。
Redis应用场景
- 网络数据缓存
- 实时计数器
- 消息队列
- 排行榜系统
Redis应用缺陷
同大小的内存与外存,内存更贵,Redis数据存储在内存中,故Redis不适合存放冷数据的应用场景
冷数据:不被用户经常访问的数据
热数据: 经常被用户访问的数据
Redis使用流程
Redis本身是一个网络服务,程序/程序员在Redis增删查改数据是通过客户端来实现的,这点和MySQL相似。