Redis简介

一.Redis是一个开源的,遵循BSD的,基于内存数据储存,被用于作为数据库的缓存,消息中间件.

二.Redis的特点

1.高性能的key/value内存数据库

2.支持丰富的数据类型

3.Redis支持持久化

4.Redis是单线程,单进程的

三.Redis的持久化机制

Redis有两种持久化机制,一种是RDB(快照),一种是AOF(追加日志文件),其中,快照是将某一时刻的所有数据写入硬盘,而日志文件则是将客户端执行的写命令记入到日志文件中

RDB和AOF的区别

  1. Redis加载RDB恢复数据远远快于AOF的方式,因为只需要读取rdb文件,直接加载到内存中即可

  2. AOF硬件宕机最少只会丢失一秒的文件

  3. AOF记录的是操作,RDB记录的是添加过的所有数据

  4. AOF文件比RDB文件大,AOF比RDB文件更容易受损

四.Redis的五大基本数据类型

1String类型,主要是用作验证码的储存

常用操作指令

set  设置一个key/value

get  根据key获得对应的value

setex  设置一个key存活的有效期

setnx  不做任何操作,不做任何添加

incr  进行数值类型的+1操作

incrby  根据提供的数据类型进行加法操作

2.list类型,特点的元素有序且可以重复

常用操作指令

lpush  将某个值加入到一个key列表的头部

lpop  返回和移除列表左边的第一个元素

lrange  获取某一个下标区间的元素,从0开始

llen  获取列表元素个数

3.set类型.特点是元素无序且不可以重复.主要用作好友和可能认识的人

常用操作指令

sadd  为集合添加元素

smebers  显示集合中的所有元素(无序)

scard  返回集合中元素的个数

srem  从集合中删除一个元素

sdiff  求差集

sinter 求交集

4.set类型,特点是可以排序,不可重复,它主要是用于排行榜

常用操作指令

zadd  添加一个有序集合

zcard  返回集合的元素个数

zrange  升序

zrevrange  降序

zrem  移除某一个元素

5.hash类型,特点是无序的

常用操作指令

hset  设置一个key/value对

hget  获得一个key对应的value

五.Redis的主从复制和哨兵机制

Redis主从复制是一种常见的数据备份方式,可以实现数据的冗余备份、读写分离等功能。Redis主从复制的原理是将一个Redis实例的数据复制到多个Redis实例上。其中,一个Redis实例作为主节点(Master),其他实例作为从节点(Slave)。主节点负责接收所有的写操作,并将写操作同步给从节点。而从节点只能接收读请求,不处理任何写请求从而保证了数据的一致性。

哨兵机制是Redis高可用性的重要保障。当Redis主节点出现故障时,哨兵机制可以自动选举新的主节点,确保整个系统的可用性。哨兵机制主要由哨兵节点组成,哨兵节点会定期检查Redis实例的健康状态,并在主节点出现故障时,自动选举新的主节点。同时,哨兵节点还可以执行故障转移操作,将原本的从节点提升为新的主节点,并重新建立主从复制关系,

什么是缓存击穿,缓存穿透,缓存雪崩

缓存穿透:

  • 发生:客户端请求的数据,在数据库和redis中都不存在,这样缓存永远都不会生效,请求最终都到了数据库上。

  • 解决:

    • 当在数据库查询的结果也不存在的时候,可以返回null值给redis,并且设置TTL

    • 布隆过滤器

缓存击穿:

  • 发生:也叫热点key问题,一个被高并发访问且业务复杂的key突然失效了,无数的请求瞬间给数据库带来的巨大冲击

  • 解决:

    • 互斥锁

缓存雪崩:

  • 发生:同一时间段内,大量的缓存key失效或者redis宕机,到时大量的请求到达数据库,带来巨大的压力。

  • 解决:

    • 给key设置随机的TTL

    • 集群方案防止宕机不可用

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值