采纳答案成功!
向帮助你的同学说点啥吧!感谢那些助人为乐的人
数据库与缓存的一致性
这位网上怎么说的都有,看到有个比较厉害的说法是:mysql的写入产生的binlog通过MQ推送到redis进行实时增量更新;这个可行靠谱么?老师是怎么看数据库和缓存的一致性?
2.缓存与缓存的一致性
这个查不到什么资料,麻烦老师解答下
同学说的缓存一致性应该是缓存和持久化存储的数据一致性吧。数据库和缓存各有其作用,缓存的出现和从库的出现一样是为了提高读操作的性能,其牺牲的就是数据实时的一致性,追求的是数据最终一致性;至于晚会上说的binlog实时同步到缓存中 确实是一个缓存更新的好办法,但是事情要从两面去看待,硬盘资源的价格和内存资源的价格是有区别的,在这种抉择下得看更看重缓存更新还是更看重资源。
老师你的意思是肯定会存在缓存和持久化存储的不一致了对吧?但是我说先删缓存或者后删缓存,面试官感觉都不满意,我应该怎么答才好?
同学好,缓存和持久化存储的不一致确实会存在,但是需要结合实际情况来说,不能一刀切,同学可以先和他解释CAP,然后在三者之间进行均衡,让面试官提供一个场景,然后具体场景具体分析,方法有很多,需要问清楚他到底有什么样的条件,才能决定做什么事情,如果他还是不满意,只能说明面试官较劲了。。
老师再追问一个哈,如果问更新数据库成功删除缓存失败怎么办?(我网上找到:1.重试;2.定期全量更新;3.设置缓存失效期;但是感觉都不能立马解决删除缓存导致的不一致,或者老师有更好的解决办法)
登录后可查看更多问答,登录/注册
招聘季即将到来,让百度资深面试官来为你的高薪Offer保驾护航
1.8k 27
2.7k 22
1.3k 15
1.4k 14
1.3k 14