Redis 基本认识

文章目录

Redis八个特性

  1. 速度快

    原因:

    ① 单线程,避免了多线程竞争(如加锁/解锁)的时间开销

    ② redis的数据存放在内存中

    ③ 使用C语言编写,C语言更方便操做硬件

    ④ Redis 源码优秀

  2. 利用键值对存储数据

    Redis 利用Key = Value的形式构建储数据,Redis有五种基础的数据结构,它们分别为:字符串(string)、哈希(hash)、列表(list)、集合(set)、有序集合(ordered set /zet ) , 并在这些基础的数据结构之上演变出了其他类型 。

  3. 客户端语言种类多

  4. 支持持久化

    将内存中的数据存储到外存中

  5. 支持主从复制

  6. 简单稳定

    Redis 本身代码量相对少,故客户端开发、功能开发相对容易, 出现漏洞的可能性低 。

  7. 支持分布式 ,提高了可用性

  8. 其他功能丰富

    ①提供了键过期功能,可以⽤来实现缓存。

    ②提供了发布订阅功能,可以⽤来实现消息系统。

    ③⽀持 Lua 脚本功能,可以利⽤ Lua 创造出新的 Redis 命令。

    ④提供了简单的事务功能,能在⼀定程度上保证事务特性。

    ⑤提供了流⽔线(Pipeline)功能,这样客⼾端能将⼀批命令⼀次性传到 Redis,减少了⽹络的开

    销。

Redis应用场景

  1. 网络数据缓存
  2. 实时计数器
  3. 消息队列
  4. 排行榜系统

Redis应用缺陷

同大小的内存与外存,内存更贵,Redis数据存储在内存中,故Redis不适合存放冷数据的应用场景

冷数据:不被用户经常访问的数据

热数据: 经常被用户访问的数据

Redis使用流程

Redis本身是一个网络服务,程序/程序员在Redis增删查改数据是通过客户端来实现的,这点和MySQL相似。

相关推荐
十八旬2 分钟前
苍穹外卖项目实战(day7-1)-缓存菜品和缓存套餐功能-记录实战教程、问题的解决方法以及完整代码
java·数据库·spring boot·redis·缓存·spring cache
2301_781668611 小时前
Redis 面试
java·redis·面试
吐泡泡_1 小时前
Redis(缓存)
redis
要一起看日出1 小时前
MVCC-多版本并发控制
数据库·mysql·mvcc
Hx__1 小时前
MySQL InnoDB 的 MVCC 机制
数据库·mysql
速易达网络1 小时前
ASP.NET MVC 连接 MySQL 数据库查询示例
数据库·asp.net·mvc
无名客01 小时前
redis分布式锁为什么采用Lua脚本实现。而不是事务
redis·分布式·lua·事务
玉衡子2 小时前
MySQL基础架构全面解析
数据库·后端
梦中的天之酒壶2 小时前
Redis Stack扩展功能
数据库·redis·bootstrap
GreatSQL2 小时前
GreatSQL分页查询优化案例实战
数据库