redis学习笔记

一、简述

  1. redis是单进程,默认16个数据库,初始默认选择0号库,可通过select+数字选择库,flushdb清空当前库,flushall清空所有库。

二、redis五大数据类型

  1. String


    redis学习笔记_第1张图片
    string.png
  2. List:它是一个字符串列表,头尾都可以插入,如果键不存在,则创建,否则直接插入,若键内容为空,则删除该键,头尾操作效率高,中间操作效率差。


    redis学习笔记_第2张图片
    list.png
  3. Hash:KV模式不变,但值是一个键值对。


    redis学习笔记_第3张图片
    hash.png
  4. Set


    redis学习笔记_第4张图片
    set.png
  5. Zset:在set的基础上,加上一个score


    redis学习笔记_第5张图片
    zset.png

三、redis的持久化

  1. RDB(Redis Database):保存的是dump.rdb文件。


    redis学习笔记_第6张图片
    rdb.png
redis学习笔记_第7张图片
快照的生成.png

优势:适合大规模的数据恢复(前提是对数据完整性和一致性要求不高)。
劣势:在一定时间内做备份,若意外宕机,最后一次修改可能会丢失。并且fork的时候会暂用两倍内存空间。

  1. AOF(Append only file):保存的是appendonly.aof文件。


    aof.png

    优势:根据策略选择,宕机时丢失数据较少。
    劣势:相同数据集的数据而言aof文件要远大于rdb文件,恢复速度慢于rdb。


    rewrite.png
  2. 总结


    redis学习笔记_第8张图片
    总结.png

四、redis主从复制

  1. 配从(库)不配主(库)
    配置方式:slaveof 主库ip 主库端口
  2. 常用方式:
    a. 一主二仆:读写分离,主库只写,从库只读。
    b. 薪火相传:a<-b<-c(b是a的仆从,c是b的仆从)这样的主从配置,减少主库的复制压力。
    c. 反客为主:slaveof no one
    d. 哨兵模式:当被监控的主库宕机时,通过投票的方式选出新的主库。当宕机的机器恢复时自动变为从库。(若不采用哨兵模式,则主库挂了后,从库处于待机状态)。

五、redis事务

  1. redis部分支持事务


    redis学习笔记_第9张图片
    transaction.png
乐观锁.png
悲观锁.png
watch小结.png
特性.png
事务执行步骤.png

六、redis消息发布订阅

redis学习笔记_第10张图片
api.png

你可能感兴趣的:(redis学习笔记)