redis
仇人太多不方便透露姓名
这个人很懒,什么都没有留下
展开
-
Redis 和 memcached 有什么区别?
面试题 redis 和 memcached 有什么区别?redis 的线程模型是什么?为什么 redis 单线程却能支撑高并发? 面试官心理分析 这个是问 redis 的时候,最基本的问题吧,redis 最基本的一个内部原理和特点,就是 redis 实际上是个单线程工作模型,你要是这个都不知道,那后面玩儿 redis 的时候,出了问题岂不是什么都不知道? 还有可能面试官会问问你 redis...原创 2019-09-16 20:40:35 · 116 阅读 · 0 评论 -
redis 都有哪些数据类型?分别在哪些场景下使用比较合适?
面试题 redis 都有哪些数据类型?分别在哪些场景下使用比较合适? 面试官心理分析 面试题剖析 redis 主要有以下几种数据类型: string hash list set sorted set string 这是最简单的类型,就是普通的 set 和 get,做简单的 KV 缓存。 hash 这个是类似 map 的一种结构...原创 2019-09-16 20:41:17 · 93 阅读 · 0 评论 -
Redis 主从架构
Redis 主从架构 单机的 redis,能够承载的 QPS 大概就在上万到几万不等。对于缓存来说,一般都是用来支撑读高并发的。因此架构做成主从(master-slave)架构,一主多从,主负责写,并且将数据复制到其它的 slave 节点,从节点负责读。所有的读请求全部走从节点。这样也可以很轻松实现水平扩容,支撑读高并发。 redis replication -> 主从架构 ->...原创 2019-09-16 20:42:03 · 165 阅读 · 0 评论 -
Redis 哨兵集群实现高可用
Redis 哨兵集群实现高可用 哨兵的介绍 sentinel,中文名是哨兵。哨兵是 redis 集群机构中非常重要的一个组件,主要有以下功能: 集群监控:负责监控 redis master 和 slave 进程是否正常工作。 消息通知:如果某个 redis 实例有故障,那么哨兵负责发送消息作为报警通知给管理员。 故障转移:如果 master node 挂掉了,会自动转...原创 2019-09-16 20:42:41 · 157 阅读 · 0 评论 -
redis 的雪崩、穿透和击穿
面试题 了解什么是 redis 的雪崩、穿透和击穿?redis 崩溃之后会怎么样?系统该如何应对这种情况?如何处理 redis 的穿透? 面试官心理分析 其实这是问到缓存必问的,因为缓存雪崩和穿透,是缓存最大的两个问题,要么不出现,一旦出现就是致命性的问题,所以面试官一定会问你。 面试题剖析 缓存雪崩 对于系统 A,假设每天高峰期每秒 5000 个请求,本来缓存在高峰期可以扛住每秒 4...原创 2019-09-16 20:43:18 · 70 阅读 · 0 评论 -
Redis 的并发竞争问题是什么?
面试题 Redis 的并发竞争问题是什么?如何解决这个问题?了解 Redis 事务的 CAS 方案吗? 面试官心理分析 这个也是线上非常常见的一个问题,就是多客户端同时并发写一个 key,可能本来应该先到的数据后到了,导致数据版本错了;或者是多客户端同时获取一个 key,修改值之后再写回去,只要顺序错了,数据就错了。 而且 redis 自己就有天然解决这个问题的 CAS 类的乐观锁方案。 ...原创 2019-09-16 20:44:22 · 276 阅读 · 0 评论 -
memcache / redis
昨天发布的《缓存架构,到底设计些什么?》一文,评论里问“究竟啥时候用memcache,啥时候用redis”的比较多。 评论的回复中,我提到,自己会在面试中问候选人这个问题。不少同学质疑,问这个问题有什么意义,究竟想考察的是什么。这个问题很严肃,且很重要,它脱离了mc和redis本身,涉及到技术人的自我要求。 我在面试中,会如何向候选人提问? 一般,我不会预设任何问题,更不会问我擅...原创 2019-09-19 22:20:07 · 99 阅读 · 0 评论 -
缓存,究竟是淘汰,还是修改?
允许cache miss的场景,不管是memcache还是redis,当被缓存的内容变化时,是改修改缓存,还是淘汰缓存?这是今天将要讨论的话题。 问:KV缓存都缓存了一些什么数据?答: (1)朴素类型的数据,例如:int (2)序列化后的对象,例如:User实体,本质是binary (3)文本数据,例如:json或者html (4)... 问:淘汰缓存中的这些数据,修改缓存中的这些...原创 2019-09-21 18:37:39 · 201 阅读 · 0 评论