Redis - 笔记

简介

Redis 是一个开源(BSD许可)的,内存中的数据结构存储系统,它可以用作数据库、缓存和消息中间件。它支持多种类型的数据结构,基本数据类型:字符串(String),散列表(Hash),链表(List),集合(Set),有序集合(SortedSet),特殊数据类型:地理位置(Geospatial),基数统计(HyperLogLog),位图场景(Bitmap)。
Redis 内置了 复制(Replication),LUA脚本(LuaScripting), LRU驱动事件(LruEviction),事务(Transactions)和不同级别的磁盘持久化(Persistence),并通过Redis哨兵(Sentinel)和自动分区(Cluster)提供高可用性(HighAvailability)。

基本数据类型

  1. 字符串(String)
  2. 散列表(Hash)
  3. 链表(List)
  4. 集合(Set)
  5. 有序集合(SortedSet)

字符串(String)

应用场景

  1. 计数器(点赞,视频播放量)
  2. 统计多单位的数量
  3. 粉丝数
  4. 对象缓存存储

散列表(Hash)

应用场景

  1. 存储部分变更数据,比如存储用户信息等等

链表(List)

应用场景

  1. 消息队列:利用List的PUSH操作,将任务存在List中,然后工作线程再用POP操作将任务取出进行执行。Redis还提供了操作List中某一段的api,你可以直接查询,删除List中某一段的元素。
  2. 消息排队,消息队列(Lpush、Rpop)、栈(Lpush、Lpop)
  3. 使用list可以构建队列系统,使用sorted set甚至可以构建有优先级的队列系统。

集合(Set)

应用场景

  1. 微博、用户将所有关注的人都放入到一个set集合当中,将它的粉丝也放在一个集合中。
  2. 共同关注、共同爱好、二度好友、QQ的好友推荐(六度分割理论)

有序集合(SortedSet)

应用场景

  1. 存储班级成绩表、工资表排序

特殊数据类型

地理位置(Geospatial)

应用场景

基数统计(HyperLogLog)

应用场景

位图场景(Bitmap)

应用场景

Q&A

Q:一个字符串类型的值能存储最大容量是多少?
A:一个字符串类型的值能存储的最大容量为512M。

posted @ 2024-05-10 10:12  ShenHaoCore  阅读(41)  评论(0)    收藏  举报