![](https://img-blog.csdnimg.cn/20201014180756923.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
redis
文章平均质量分 78
啃不动的柠檬树
这个作者很懒,什么都没留下…
展开
-
Redis面试题
Redis面试题(2020最新版) ThinkWon 2019-12-13 10:38:01 ...转载 2021-04-25 16:19:27 · 357 阅读 · 0 评论 -
【Redis】18.缓存预热、缓存雪崩、缓存击穿、缓存穿透、性能指标监控等企业级解决方案
缓存预热 在高请求之前,做好一系列措施,保证大量用户数量点击造成灾难。 请求数量较高主从之间数据吞吐量较大,数据同步操作频度较高 缓存预热解决方案 前置准备工作: 日常例行统计数据访问记录,统计访问频度较高的热点数据利用LRU数据删除策略,构建数据留存队列 例如:storm与kafka配合 准备工作: 将统计结果中的数据分类,根据级别,redis优先加载级别较高的热点数据利用分布式多服务器同时进行数据读取,提速数据加载过程 实施: 使用脚本程序固定出大数据预热过程如果条件允许,使用CDN.原创 2021-01-09 16:29:35 · 176 阅读 · 0 评论 -
【Redis】17.Cluster集群结构搭建
集群简介 现状问题 业务发展过程中遇到的峰值瓶颈 redis提供的服务OPS可以达到10万/秒,当前业务OPS已经达到20万/秒内存单机容量达到256G,当前业务需求内存容量1T使用集群的方式可以快速解决上述问题 集群架构 集群就是使用网络将若干台计算机联通起来,并提供统一的管理方式,使其对外呈现单机的服务效果。 集群的作用 分散单台服务器的访问压力,实现负载均衡分散单台服务器的存储压力,实现可扩展性降低单台服务器宕机带来的业务灾难 Redis集群结构设计 数据存储设计 通过算法设计.原创 2021-01-08 23:39:12 · 84 阅读 · 0 评论 -
【Redis】16.Redis哨兵
哨兵简介 主机”宕机“后我们要做的事情 将宕机的master下线找一个slave作为master通知所有的slave连接新的master启动新的master与slave全量复制*N+部分复制 *N 但是这伴随着以下问题 谁来确认master宕机了找一个主?怎么找法修改配置后,原始的主恢复了怎么办? 哨兵 哨兵(sentinel) 是一个分布式系统,用于对主从结构中的每台服务器进行监控,当出现故障时通过投票机制选择新的master并将所有slave连接到新的master 哨兵的作用 监控 .原创 2021-01-08 22:54:20 · 96 阅读 · 0 评论 -
【Redis】15.Redis主从复制
主从复制简介 互联网“三高”架构 你的"Redis"是否高可用 单机redise风险与问题 问题1 机器故障 现象:硬件故障、系统崩溃 本质:数据丢失,很可能对业务造成灾难性打击 结论:基本上会放弃使用redis问题2 容量瓶颈 现象:内存不足,从16G升级到64G,无限升级内存 本质:穷,硬件条件跟不上 结论:放弃使用redis结论: 为了避免单点redis服务器故障,准备多台服务器,互相连通。将数据复制多个副本保存在不同的服务器上,连接在一起,并保证数据是否同步的,即使有其中一台服务器宕机,.原创 2021-01-08 22:03:20 · 96 阅读 · 0 评论 -
【Redis】14.Redis高级数据类型Bitmaps、HyperLogLog、GEO
【Redis】14.Redis高级数据类型Bitmaps、HyperLogLog、GEO Bitmaps:用比特位进行快速的状态统计 Bitmaps基本操作 Bitmaps不是一个新的数据类型,而是string中二进制位的操作接口。之前是以string的整体操作数据,现在是用string中二进制的比特位来存储。Bitmaps类型的扩展操作 业务场景 电影网站 统计每天某一部电影是否被点播统计每天有多少部电影被点播统计每周/月/年有多少部电影被点播统计年度哪部电影没有被原创 2021-01-08 14:50:27 · 79 阅读 · 0 评论 -
【Redis】13.Redis服务器配置redis.conf
服务器端设定 设置服务器以守护进程的方式运行 deamonize yes|no 绑定主机地址 bind 127.0.0.1 设置服务器端口号 port 6379 设置数据库数量 databases 16 日志配置 设置服务器以指定日志记录级别(默认verbose) loglevel debug|verbose|notice|warning 日志记录文件名 logfile 端口号.log 注意:日志级别开发期设置为ver原创 2021-01-08 14:09:07 · 81 阅读 · 0 评论 -
【Redis】12.Redis删除策略
Redis中的数据特征 Redis是一种内存级数据库,所有数据均存放在内存中,内存中的数据可以通过TTL指令获取其状态XX : 具有时效性的数据-1 : 永久有效的数据-2 : 已经过期的数据 或 被删除的数据 或 未定义的数据(可是过期的数据是立即删除吗?不是!) 数据删除策略 数据删除策略 定时删除惰性删除定期删除 时效性数据的存储结构 数据删除策略的目标 在内存占用与CPU占用之间寻找一种平衡,顾此失彼都会造成整体redis性能的下降,甚至引发服务器宕机或内存泄漏。 定时删除 .原创 2021-01-08 14:02:43 · 144 阅读 · 0 评论 -
【Redis】11.Redis事务、事务锁
事务 一旦成功所有的成功,一个失败,所有一些列连续动作都失败 事务的基本操作 开启事务 multi 作用 设定事务的开启位置,此指令执行后,后续的所有指令均加入到事务中执行事务 exec 作用 设定事务的结束位置,同时执行事务。与multi成对出现,成对使用 注意:加入事务的命令暂时到任务队列中,并没有立即执行,只有执行exec命令才开始执行 事务定义过程中发现问题,怎么办? 取消事务 discard 作用 终止当前事务定义,发生在multi之.原创 2021-01-08 11:28:08 · 90 阅读 · 0 评论 -
【Redis】9.10.Redis持久化方式之RDB&AOF&AOF和RDB区别场景分析
持久化简介 什么是持久化 利用永久性存储介质将数据进行保存,在特定的事件将保存的数据进行恢复的工作机制称为持久化 为什么要持久化 防止数据的意外丢失,确保数据安全性 持久化的过程保存什么 将当前数据状态进行保存,快照形式,存储数据结果,存储而是简单,关注点在数据 -----》 RDB将数据的操作过程进行保存,日志形式,存储操作过程,存储格式复杂,关注点在数据的操作过程 ------》AOF RDB RDB启动方式 谁,什么事件,干什么事情? 谁:redis操作者(用户)什么时间:即时.原创 2021-01-07 23:26:32 · 166 阅读 · 0 评论 -
【Redis】7.使用jedis操作redis数据库
jedisjedis是java程序操纵Redis的工具。Jedis是Redis官方推荐的Java链接工具使用前导入,下面的测试建议也导入测试的包<!-- 导入jedis的包--><dependency> <groupId>redis.clients</groupId> <artifactId>jedis</artifactId> <version>2.9.0</version>原创 2021-01-07 21:32:25 · 163 阅读 · 0 评论 -
【Redis】6.Redis key通用指令以及数据库的通用操作
key通用指令 key特征 key是一个字符串,通过key获取redis中保存的数据 key应该设计那些操作? 对于key自身状态的相关操作,例如:删除,判定存在,获取类型等对于key有效性控制相关操作,例如:有效期设定,判定是否有效,有效状态的切换等对于key快速查询操作,例如:按指定策略查询key key基本操作 删除指定key del key 获取key是否存在 exists key 获取key的类型 type key key扩展操作(时效性原创 2021-01-07 21:02:11 · 138 阅读 · 2 评论 -
【Redis】5. Resid数据类型综合实践案例
Resid数据类型综合实践案例 业务场景 1.计数器 解决方案 设计计数器,记录调用次数,用于控制业务执行次数。以用户id作为key,使用此时作为value在调用前获取次数,判断是否超过限定次数,不超过次数的情况下,每次调用计数+1,业务调用失败,计数-1为了计数器设置生命周期为指定周期,例如1秒/分钟,自动清空周期内使用次数。 Tips 16: redis应用于限时按次结算的服务控制 业务场景(微信会话) 业务分析 解决方案 依赖list的数据具有顺序的特征对消息进行管理,将list.原创 2021-01-07 21:01:25 · 134 阅读 · 0 评论 -
【Redis】4.Redis数据存储list&set&sorted_set
list类型 数据存储需求:存储多个数据,并对数据进入存储空间的顺序进行区分需要的存储数据:一个存储空间保存多个数据,且通过数据可以体现进入顺序list类型:保存多个数据,底层使用双向链表存储结构实现 list类型数据基本操作 添加/修改数据 lpush key value1 [value2] … rpush key value1 [value2] … 获取数据 lrange key start stop lindex key index llen key 删除并移除数据原创 2021-01-04 23:37:27 · 254 阅读 · 0 评论 -
【Redis】3. Redis数据类型 Hash
学习教程 https://www.bilibili.com/video/BV1CJ411m7Gc?p=12 Hash类型 存储的困惑 对象类数据的存储如果具有较为频繁的更新需求操作会显得笨重 hash类型 新的存储需求:对一系列存储的数据进行编组,方便管理,典型应用存储对象信息需要的内存结构:一个存储空间保存多少个键值对数据hash类型:底层使用哈希表结构实现数据存储 hash类型数据的基本操作 添加/修改数据 hset key field value 获取数据 hg.原创 2021-01-04 22:34:24 · 99 阅读 · 0 评论 -
【Redis】2. Redis数据类型 String以及key的设置约定
学习资料 https://www.bilibili.com/video/BV1CJ411m7Gc?p=6 数据存储类型介绍 业务数据的特殊性 作为缓存使用 原始业务功能设计 秒杀 618活动 双十一活动 排队购票运营平台监控到的突发高频访问数据 突发市政要闻,被强势关注围观高频、复杂的统计数据 在线人数 投票排行榜 附加功能 系统功能优化或升级 单服务器升级集群Session管理Token管理 Redis 数据类型(5种常用) string --> Stringhash -->原创 2021-01-04 11:39:03 · 163 阅读 · 0 评论 -
【Redis】1.Redis入门简介以及基本操作命令
学习资料 https://www.bilibili.com/video/BV1CJ411m7Gc?p=6 问题的抛出 出现的问题: 海量用户高并发 罪魁祸首——关系型数据库: 性能瓶颈:磁盘IO性能低下扩展瓶颈:数据关系复杂,扩展性差,不便于大规模集群 解决思路 降低...原创 2021-01-04 11:14:59 · 112 阅读 · 1 评论