redis夺命连环问系列
文章平均质量分 90
redis的八股
孤独时代的罗永浩
学架构中。。。
展开
-
redis和mysql如何保证数据一致性?--来自某牛的回答
redis和mysql如何保证数据一致性?-----------------关注我,以后更新更多文章!!!一般情况下redis是用来充当数据库和应用中间的一个读操作的缓存层的,它的主要目的呢是减少数据库的IO,提升数据的IO性能。当应用程序需要取某数据的时候首先尝试redis里面去加载,如果命中则直接返回。如果没命中则直接去数据库里面去查询,查询到数据再把数据缓存到redis里面。会出现一个问题就是一份数据同时保存在数据库和redis里面,当数据发生变化的时候需要同时去更新mysql和redis,由于原创 2022-03-25 07:07:44 · 1183 阅读 · 2 评论 -
redis夺命连环问11--集群模式工作原理能说一下么?数据倾斜咋整?
目录Redis集群模式的工作原理能说一下么?首先谈数据分区规则再谈分区具体方案最后谈实例通信机制盲目扩大集群规模,实例间的通信量也会增加,集群性能变慢,如何降低实例间的通信开销?在集群模式下,redis 的 key 是如何寻址的?分布式寻址(数据分布方案)都有哪些算法?了解一致性 hash 算法吗?Redis集群如何选择数据库?Redis集群最大节点个数是多少?Redis集群会有写操作丢失吗?为什么?为什么要做Redis分区?你知道有哪些Redis分区实现方案?Redis分区有什么缺点?介绍下Redis C原创 2022-02-06 20:46:24 · 1500 阅读 · 0 评论 -
redis夺命连环问10--说说Redis是怎么做旁路缓存的?
目录相关前置知识文章说说Redis是怎么做旁路缓存的?先谈缓存大概怎么做再谈旁路缓存两种模式那怎么解决缓存和数据库的数据不一致问题?如何解决缓存雪崩?如何解决缓存击穿?如何解决缓存穿透?刚刚你说到了布隆过滤器,能具体说说吗?如何解决缓存污染?相关前置知识文章前置篇redis夺命连环问4–Redis内存满了怎么办?怎么优化?说说Redis是怎么做旁路缓存的?先谈缓存大概怎么做Redis 缓存时,有三个操作:应用读取数据时,需要先读取 Redis;发生缓存缺失时,需要从数据库读取数据;发生缓原创 2022-02-05 16:43:28 · 1557 阅读 · 0 评论 -
redis夺命连环问9--请你谈谈对Redis事务的理解
目录请你谈谈对Redis事务的理解先扯事务是啥-What再谈Redis 是如何实现事务-How再谈对于事务的需求来说实现得咋样呢请你谈谈对Redis事务的理解先扯事务是啥-What是对数据进行读写的一系列操作,要么都成功要么都不成功。满足以下要求:原子性。原子性的要求很明确,就是一个事务中的多个操作必须都完成,或者都不完成。一致性。就是指数据库中的数据在事务执行前后是一致的。隔离性。它要求数据库在执行一个事务时,其它操作无法存取到正在执行事务访问的数据。持久性。数据库执行事务后,数据的修改要原创 2022-02-05 13:37:07 · 991 阅读 · 0 评论 -
redis夺命连环问8--秒杀场景中如何使用Redis搞事情?
目录如何使用Redis实现分布式锁?先谈谈分布式锁是啥?-What再谈如何在单个 Redis 节点实现分布式锁-How再谈在多个 Redis 节点实现高可靠的分布式锁-How如何使用Redis实现分布式锁?先谈谈分布式锁是啥?-What实现分布式锁的两个要求要求一:分布式锁的加锁和释放锁的过程,涉及多个操作。需要保证这些锁操作的原子性;要求二:共享存储系统保存了锁变量,需要考虑保证共享存储系统的可靠性,进而保证锁的可靠性。再谈如何在单个 Redis 节点实现分布式锁-How使用 SET 命令和原创 2022-02-04 20:51:00 · 718 阅读 · 0 评论 -
redis夺命连环问7--Redis怎么保存海量数据?
目录Redis怎么保存海量数据?切片集群,横向扩展Redis、切片集群说说Redis哈希槽的概念?那客户端如何定位数据呢?在切片集群中,怎么应对数据倾斜?Redis怎么保存海量数据?切片集群,横向扩展Redis、切片集群Redis 应对数据量增多的两种方案:纵向扩展(scale up)和横向扩展(scale out)。纵向扩展:升级单个 Redis 实例的资源配置,包括增加内存容量、增加磁盘容量、使用更高配置的 CPU。优点:实施起来简单、直接缺点:会受到硬件和成本的限制横向扩展:横向原创 2022-02-04 18:46:11 · 2360 阅读 · 0 评论 -
redis夺命连环问6--主库故障了从库该怎么办,数据还能保持一致吗,Redis 还能正常提供服务吗?
目录主库故障了从库该怎么办,数据还能保持一致吗,Redis 还能正常提供服务吗?先谈哨兵机制哨兵咋监控的呢?如何选定新主库呢?哨兵集群是怎么建立的?哨兵集群由哪个实例来执行主从切换呢?主库故障了从库该怎么办,数据还能保持一致吗,Redis 还能正常提供服务吗?先谈哨兵机制哨兵主要负责的就是三个任务:监控、选主(选择主库)和通知。哨兵咋监控的呢?哨兵进程会使用 PING 命令检测它自己和主、从库的网络连接情况,用来判断实例的状态。如果哨兵发现主库或从库对 PING 命令的响应超时了,那么,哨兵就原创 2022-02-04 15:55:58 · 948 阅读 · 0 评论 -
redis夺命连环问5--主从库如何实现数据一致?谈谈你对主从复制的理解
目录主从库如何实现数据一致?谈谈你对主从复制的理解redis 主从复制是啥?-What那主从库同步是如何完成的呢?-How要是主从库间的网络断连了,数据还能保持一致吗?主从库如何实现数据一致?谈谈你对主从复制的理解redis 主从复制是啥?-What主从复制:指将一台Redis服务器的数据,复制到其他的Redis服务器。前者称为主节点(Master/Leader),后者称为从节点(Slave/Follower), 数据的复制是单向的!只能由主节点复制到从节点(主节点以写为主、从节点以读为主)。Redi原创 2022-02-04 14:35:33 · 352 阅读 · 0 评论 -
redis夺命连环问4--Redis内存满了怎么办?怎么优化?
目录Redis内存满了怎么办?怎么优化内存?Redis主要消耗什么物理资源?Redis的内存用完了会发生什么?谈谈缓存数据的淘汰机制谈谈LRU算法如何处理被淘汰的数据?Redis怎么优化内存?Redis内存满了怎么办?怎么优化内存?Redis主要消耗什么物理资源?内存。Redis的内存用完了会发生什么?如果达到设置的上限,Redis的写命令会返回错误信息(但是读命令还可以正常返回。)或者你可以配置内存淘汰机制,当Redis达到内存上限时会冲刷掉旧的内容。谈谈缓存数据的淘汰机制Redis 缓存有原创 2022-02-03 19:32:41 · 3860 阅读 · 2 评论 -
redis夺命连环问3--请你谈谈Redis持久化
目录请你谈谈Redis持久化Redis持久化是什么-What谈谈AOF日志是怎么实现的?-How日志文件太大了怎么办?谈谈AOF重写机制-WhatAOF 重写仍然很耗时啊,会阻塞吗?咋重写的-How请你谈谈Redis持久化Redis持久化是什么-What持久化就是把内存的数据写到磁盘中去,防止服务宕机了内存数据丢失。Redis 的持久化主要有两大机制,即 AOF(Append Only File)日志和 RDB 快照。谈谈AOF日志是怎么实现的?-How和数据库写前日志不同,redis采用写后日原创 2022-02-03 14:48:37 · 902 阅读 · 0 评论 -
redis夺命连环问2--谈谈你对redis的认识,越多越好。
目录谈谈你对redis的认识,越多越好。1.先谈谈Redis是啥-What2.Redis有哪些优缺点-What3.Redis能干啥-What-What4.为什么要用 Redis /为什么要用缓存-What-What-Why谈谈你对redis的认识,越多越好。1.先谈谈Redis是啥-WhatRedis是一个用 C 语言编写的,开源的高性能非关系型(NoSQL)的键值对数据库。Redis 可以存储键和五种不同类型的值之间的映射。键的类型只能为字符串,值支持五种数据类型:字符串、列表、集合、散列表、有原创 2022-02-03 13:49:12 · 208 阅读 · 0 评论 -
redis夺命连环问1--为什么单线程Redis能那么快?
目录为什么单线程的 Redis 能那么快?1.先谈单线程是啥-What2.再谈单线程用来干啥-What3.再谈Redis的单线程怎么用-How4.再谈它是内存数据库并有高效数据结构刚刚你说到了高效的数据结构,能具体讲讲redis是怎么实现的吗?1.数据类型方面:可以谈一下Hash2.底层数据结构方面:可以谈压缩列表、跳表3.String数据类型和它具体实现也可扯一波为什么单线程的 Redis 能那么快?1.先谈单线程是啥-What首先咱得知道Redis是单线程。主要是指 Redis的网络 IO 和键值原创 2022-02-03 12:43:37 · 1321 阅读 · 0 评论