美团三面:高并发下如何保证 redis和数据库数据一致性的?当时真的回答的稀里糊涂。。。

作者: 徐庶说Java分类: 计算机技术 发布时间: 2024-03-20 15:39:06 浏览:3796 次

美团三面:高并发下如何保证 redis和数据库数据一致性的?当时真的回答的稀里糊涂。。。

兔子不乖R:
这种回答太八股文了,一看就是项目经验不够的人背出来的。如何设计你的缓存系统,取决与你存的是什么数据,对数据准确率多少,缓存是读频繁还是写频繁。打个比方,如果你存的是静态信息,运行有一定的误差,而静态信息是大量的读,定期批量的更新。这种情况下,很明显你的这个设计就不适合了。

【回复】就我当面试官的经历来说,确实能听出来是不是背的答案,不过能这么用心准备的,我是挺乐意给机会的,总比一问三不知好多了
【回复】回复 @好心情1985 :经常修改数据库的就不适合做缓存,或者说不适合做同步缓存。另外,有多少场景是要求100%一致的?价格需要么,库存需要么。要求100%一致的数据存 redis 缓存,这不是开玩笑么?
【回复】人家肯定是专门针对经常修改数据库数据的情况,静态数据需要考虑吗?
大肥猫猫毛:
无法保持 只能保持最终一致性 然后就是扒拉扒拉八股文[doge] 答题结束

【回复】回复 @大肥猫猫毛 : 那也得有方案
【回复】对缓存只需尽最大努力即可
Korovkin:
2分15秒时的解释很难理解:既然判断了要修改数据,一定已经经过了一些业务计算了,这时直接改Redis就完事了。我不确定Redis底层的数据结构是什么,如果是RBTree这种东西,delete可能会导致重新平衡吧。

程序员 编程 面试 数据库 美团 计算机技术 Java 编程开发 Redis java面试

如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!

更多相关阅读