redis基础学习总结

什么是Redis

  • Redis是Remote Dictionary Server(远程数据服务)的缩写,是一款:内存高速缓存数据库
  • 该软件使用C语言编写,它的数据模型为 key-value。
  • 它支持丰富的数据结构,比如 string, list, set, sorted set, hash 。
  • 可持久化,保证了数据安全。

什么场合适合使用Redis

  • String——相当于加上持久化特性的memcache,储存一些常用字符串数据
  • Sort Set——排行榜应用,取top n操作,例如sina微博热门话题
  • List——获得最新N个数据 或 某个分类的最新数据计数器应用
  • Set——sns(social network site)获得共同好友

redis和memcache比较

  • Redis不仅仅支持简单的k/v类型的数据,同时还提供list,set,sorted set,hash等数据结构的存储。
  • Redis支持master-slave(主—从)模式应用。
  • Redis支持数据的持久化,可以将内存中的数据保持在磁盘中,重启的时候可以自动加载
  • Redis单个value的最大限制是1GB, memcached只能保存1MB的数据

redis资源


keys键操作

这里写图片描述


string类型操作

这里写图片描述


list类型操作

list类型其实就是一个双向链表。通过push,pop操作从链表的头部或者尾部添加删除元素。
这里写图片描述


set类型操作

set是string类型的无序集合。
除了基本的添加删除操作,还包含集合的取并集(union),交集(intersection),差集(difference)。通过这些操作可以很容易的实现sns中的好友推荐功能。
这里写图片描述


sort set排序类型操作

和set一样sorted set也是string类型元素的集合,
不同的是每个元素都会关联一个权(score)。
通过排序权值,可以有序的获取集合中的元素

这里写图片描述


hash类型操作

hash数据类型存储的数据与mysql数据库中存储的一条记录极为相似。
这里写图片描述
这里写图片描述
这里写图片描述


redis的持久化方式

  • Snapshotting(快照)方式,也是默认方式

    1. 默认的文件名为:dump.rdb
    2. save 900 1 #900 秒内如果超过 1 个 key 被修改,则发起快照保存
      save 300 10 #300秒超过10个key被修改,发起快照
      save 60 10000 #60秒超过10000个key被修改,发起快照
  • Append-only file(缩写 aof)方式,需要到配置文件开启

  1. 默认的文件名为:appendfilename appendonly.aof
  2. 说明:会将每一个收到的写命令都通过 write 函数追加到文件中,当 redis 重启时会通过重新执行文件中保存的写命令来在内存中重建整个数据库的内容
  3. 有三个选项:
    appendfsync always——每次收到写命令就立即强制写入磁盘,最慢的,但是保证完全的持久化,不推荐使用
    appendfsync everysec——每秒钟强制写入磁盘一次,在性能和持久化方面做了很好的折中,推荐
    appendfsync no——完全依赖 os,性能最好,持久化没保证
  • Snapshotting和aof是同时开启的。Snapshotting比较耗费资源,较长时间持久化一次,在2次Snapshotting期间的数据使用aof方式保存。2种方式合作保证了redis的数据安全
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值