摘要: 缓存穿透 key 对应的数据在数据源并不存在,每次针对此 key 的请求从缓存获取不到,请求都会压到数据源(数据库),从而可能压垮数据源。 比如用一个不存在的用户 id 获取用户信息,不论缓存还是数据库都没有,若黑客利用此漏洞进行攻击可能压垮数据库。 缓存穿透发生的条件 应用服务器压力变大 redi 阅读全文
posted @ 2023-03-02 16:53 Silent丿丶黑羽 阅读(42) 评论(0) 推荐(0) 编辑
摘要: 缓存击穿 key 对应的数据存在,但在 redis 中过期(某个热门key过期),此时若有大量并发请求过来,这些请求发现缓存过期一般都会从后端数据库加载数据并回设到缓存,这个时候大并发的请求可能会瞬间把后端数据库压垮。 缓存击穿的现象 数据库访问压力瞬时增加,数据库崩溃 redis 里面没有出现大量 阅读全文
posted @ 2023-03-02 16:53 Silent丿丶黑羽 阅读(28) 评论(0) 推荐(0) 编辑
摘要: 缓存雪崩 现象:在极少时间段内,我们查询大量key的集中过期的情况,此时若有大量并发请求过来,这些请求发现缓存过期一般都会从后端数据库加载数据并回设到缓存,这个时候大并发的请求可能会瞬间把后端数据库压垮。 缓存雪崩与缓存击穿的区别在于这里针对很多 key 缓存,前者则是某一个 key 正常访问。 缓 阅读全文
posted @ 2023-03-02 16:53 Silent丿丶黑羽 阅读(37) 评论(0) 推荐(0) 编辑
摘要: Redis主从复制 主机数据更新后根据配置和策略, 自动同步到备机的 master/slaver 机制,Master 以写为主,Slave 以读为主,主从复制节点间数据是全量的。 作用: 读写分离,性能扩展 容灾快速恢复 上图将主服务器复制了3份从服务器,主服务器进行写操作,从服务器进行读操作,读写 阅读全文
posted @ 2023-03-02 16:50 Silent丿丶黑羽 阅读(217) 评论(0) 推荐(0) 编辑
摘要: AOF(Append Only File) 以日志的形式来记录每个写操作(增量保存),将 Redis 执行过的所有写指令记录下来 (读操作不记录), 只许追加文件但不可以改写文件,redis 启动之初会读取该文件重新构建数据,换言之,redis 重启的话就根据日志文件的内容将写指令从前到后执行一次以 阅读全文
posted @ 2023-03-02 08:00 Silent丿丶黑羽 阅读(316) 评论(0) 推荐(2) 编辑
摘要: 前言 Redis 提供了 2 个不同形式的持久化方式: RDB(Redis DataBase) AOF(Append Of File) RDB 在指定的时间间隔内将内存中的数据集快照写入磁盘, 也就是行话讲的 Snapshot 快照,它恢复时是将快照文件直接读到内存里。 备份是如何执行的 Redis 阅读全文
posted @ 2023-02-28 16:24 Silent丿丶黑羽 阅读(107) 评论(0) 推荐(2) 编辑
摘要: 秒杀案例描述 现在有1个秒杀的功能,1个原来价值5000元的手机现在搞活动,降价到1块钱,做秒杀活动。库存就10个,假设有10000人抢购。 目前逻辑是:抢到了商品库存就减1,然后把用户id加入到秒杀成功者清单中 Redis 事务(模拟秒杀并发) 模拟我们使用工具 ab 模拟测试: CentOS6 阅读全文
posted @ 2023-02-26 15:06 Silent丿丶黑羽 阅读(94) 评论(0) 推荐(0) 编辑
摘要: Redis事务定义 Redis 事务是一个单独的隔离操作:事务中的所有命令都会序列化、按顺序地执行。事务在执行的过程中,不会被其他客户端发送来的命令请求所打断。 Redis 事务的主要作用就是串联多个命令防止别的命令插队。 Multi、Exec、discard Redis 事务中有 Multi、Ex 阅读全文
posted @ 2023-02-26 13:21 Silent丿丶黑羽 阅读(229) 评论(0) 推荐(1) 编辑
摘要: 什么是发布和订阅 Redis 发布订阅 (pub/sub) 是一种消息通信模式:发送者 (pub) 发送消息,订阅者 (sub) 接收消息。 Redis 客户端可以订阅任意数量的频道。 Redis 的发布和订阅 客户端可以订阅频道如下图: 当给这个频道发布消息后,消息就会发送给订阅的客户端: 发布订 阅读全文
posted @ 2023-02-25 14:43 Silent丿丶黑羽 阅读(31) 评论(0) 推荐(0) 编辑
摘要: 有序集合Zset Redis 有序集合 zset 与普通集合 set 非常相似,是一个没有重复元素的字符串集合。 不同之处是有序集合的每个成员都关联了一个评分(score),这个评分(score)被用来按照从最低分到最高分的方式排序集合中的成员。集合的成员是唯一的,但是评分可以是重复了 。 因为元素 阅读全文
posted @ 2023-02-25 13:50 Silent丿丶黑羽 阅读(85) 评论(0) 推荐(0) 编辑