Redis的十个问题

1.Redis支持的数据类型?
2.什么是Redis持久化?Redis有哪几种持久化方式?优缺点是什么?
3.Redis 有哪些架构模式?讲讲各自的特点
4.使用过Redis分布式锁么,它是怎么实现的?
5.使用过Redis做异步队列么,你是怎么用的?有什么缺点?
6.什么是缓存穿透?如何避免?什么是缓存雪崩?何如避免?
7.Redis常用命令
8.为什么Redis 单线程却能支撑高并发?
9.说说Redis的内存淘汰策略
10.Redis的并发竞争问题如何解决?

1.Redis支持的数据类型?

在这里插入图片描述

2.什么是Redis持久化?Redis有哪几种持久化方式?优缺点是什么?

Redis持久化:用小而紧凑的格式将存储在内存中的数据写入硬盘。
持久化方式:

  • 快照持久化
  • AOF持久化
快照持久化

通过创建来获得存储在内存里面的数据在某个时间点上的副本。

创建快照的方式:

  • BGSAVE命令(异步创建)
  • SAVE命令(不再接收其他命令)
  • SHUTDOWN命令会触发SAVE操作
  • 配置save选项,redis会自动触发BGSAVE操作
  • redis主服务器收到其他服务器发送的SYNC命令,可能会触发主服务器的BGSAVE操作

快照的使用方式:

  • 用户可以对快照进行备份
  • 将快照复制到其他服务器
  • 将快照留在原地以便重启服务器时使用

缺点:Redis、系统、硬件这三者之中的任意一个奔溃了,则redis会丢失最近一次创建快照后写入的所有数据。

AOF持久化

将所有修改了数据库的命令都写入一个只追加(append-only)文件里面
将被执行的写命令写到AOF文件的末尾,以此来记录数据发生的变化。Redis只需从头到尾重新执行一次AOF文件中的所有命令,就可以恢复AOF文件所记录的数据集。

优点:可以将丢失数据的时间窗口降至1s(甚至不丢失任何数据),也可以在极短的时间内完成定期的持久化操作。

缺点:

  • 这种策略需要对硬盘进行大量写入,所以redis处理命令的速度会收到硬盘性能的限制。
  • AOF文件体积不断增大,还原操作时间不断赠长。(为解决此问题,可以向redis发生BGREWRITEAOF命令,该命令会通过移除AOF文件中冗余命令来重写AOF文件,使AOF文件的体积变得尽可能的小。)

3.Redis 有哪些架构模式?讲讲各自的特点

4.使用过Redis分布式锁么,它是怎么实现的?

5.使用过Redis做异步队列么,你是怎么用的?有什么缺点?

6.什么是缓存穿透?如何避免?什么是缓存雪崩?何如避免?

参考:帮你解读什么是Redis缓存穿透和缓存雪崩(包含解决方案)

7.Redis常用命令

8.为什么Redis 单线程却能支撑高并发?

参考:Redis 是单线程为何却能支撑高并发

9.说说Redis的内存淘汰策略

10.Redis的并发竞争问题如何解决?

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值