数据库:Redis相关知识梳理_redis

1、数据类型

  • string(字符串):最基本的k-v存储 ,适合验证码、配置信息等

  • list(列表):适合有序/固定的列表。比如行政区、字典表、消息队列等。

  • set(集合):支持交集、并集、差集等操作。可以用来找共同点等。

  • hash(哈希):类似于唯一标识,value对应详情。适合存储文章内容、商品内容等详情。

  • zset(有序集合):增强版本增加了一个score参数,用来排序,适合排行榜类的数据存储

2、优点

  • 速度快。数据存储在内存中,查找和操作的时间复杂度都是O(1)。类似于HashMap

  • 多种数据类型,应用场景丰富

  • 支持事务特性、所有操作都是原子性

  • 支持数据的持久化,可以将数据保存在磁盘中

  • 支持主-从模式的数据库备份

  • 性能高。读取速度可达到110000次/s;写81000次/秒

  • 支持publish/subcribe、通知、key过期特性

3、场景举例

3.1 缓存热点数据

        字典表

行政区

用户登录信息

配置信息

3.2 计数器

        点赞数

浏览数

3.3 消息队列

建议采用专门的消息中间件会更可靠。

3.4 最新列表

最新文章列表

上架新品列表

3.5 排行榜

        文章排名

商品排名

3.6 分布式锁、单线程机制

        电商秒杀

全局增量ID

3.7时效信息存储

验证码5分钟失效

数据库:Redis相关知识梳理_python_02