字节跳动后端实习一面凉经
面的是悉尼部门全程英文,录音了可是懒得一个个翻了就说我记得住的
项目用到了redis那你redis遇到一万个请求炸了怎么办?
你项目里如何防止超卖?锁的底层原理是什么?
数据库和缓存一致性怎么保持?
手撕:lru,没写出来说出了思路用链表
全程一小时,第二天挂了 #春招至今,你收到几个面试了?# #字节跳动面经# #面经#
项目用到了redis那你redis遇到一万个请求炸了怎么办?
你项目里如何防止超卖?锁的底层原理是什么?
数据库和缓存一致性怎么保持?
手撕:lru,没写出来说出了思路用链表
全程一小时,第二天挂了 #春招至今,你收到几个面试了?# #字节跳动面经# #面经#
全部评论

感觉问的似乎不多呀
PDD考虑吗,急招人,岗位多,帮跟踪进度:https://careers.pddglobalhr.com/campus/intern?t=47LjBxZ34k
相关推荐
查看26道真题和解析 点赞 评论 收藏
分享
04-02 18:58
四川大学 Java
Esten:补一下4.的缓存一致性解决:
在开发过程中,先修改数据库再删除缓存,也会有短暂脏数据时间段,即在数据库修改过程中,其他线程读取缓存仍然命中,会返回脏数据,但是由于修改操作时间极短,只有极少线程会读取到缓存中的脏数据,在互联网业务下属于可接受范畴;反之先删除缓存,再修改数据库,可能会出现其他线程由于命中缓存失败,前往数据库构建缓存,由于数据库的修改还未完成,读取到脏数据构建缓存,该缓存在后续ttl中一直存在返回脏数据,导致前端请求数据大量出错。
总结:两种方式都会有返回脏数据的可能,但是后删只会有短暂时间(线程修改数据库时间)业务错误,先删缓存可能有整个ttl时间业务错误
查看17道真题和解析 点赞 评论 收藏
分享