百度国际化后台开发日常实习二面

算法:LC146. LRU 缓存(mid)
1. 项目如何实现防止超卖的?为什么用Redis和Lua脚本,而不用锁实现?
2. 异步秒杀如何实现的?
3. 项目如何保障数据库和缓存的一致性
4. 如果消息队列发送消息失败,怎么处理?有没有脏数据存留,怎么处理?
5. 项目怎么解决缓存击穿问题的?
6. 为什么使用逻辑过期方案,而不用互斥锁?
7. Mysql的主从复制过程是什么?是同步的吗?
8. 查询数据库时,针对主从同步的延迟问题,如何从业务层设计优化(提示进行读写分离等)
9. 大数据的分页查询会出现什么问题?怎么解决
10. Redis的分布式锁如何实现?SETNX的value可以随便传吗?有什么要求
11. 如果使用SETNX实现的锁在业务还没处理完就到达TTL怎么办?
12. 使用TCP传输数据时丢包怎么办?
13. 使用HTTP设计接口时,针对可能出现的请求丢失问题,怎么从业务层设计优化(提示从状态性、幂等性、限流等角度设计)
二面项目拷打得很深,很多点问得很细节,而且延申问了很多问题,开放性较强。面试官提示,不要考虑从底层优化现有的协议和中间件(HTTP、Mysql等),而是从项目业务角度考虑异常case并优化和兜底 #面经#  #大厂#  #百度#  #后端开发#

全部评论
lru 要手写双向链表,还是可以用 python 的数据结构啊佬
点赞 回复 分享
发布于 02-22 12:59 江苏
好巧,之前在这个大部门实习
点赞 回复 分享
发布于 02-09 02:26 未知
为什么使用逻辑过期方案,而不用互斥锁咋回答的
点赞 回复 分享
发布于 02-08 22:51 湖南
你这刷的咋样,过了没呢
点赞 回复 分享
发布于 02-08 16:42 陕西
佬,咱们项目是点评吗,如果是的话咱们做了什么优化吗,想学习学习
点赞 回复 分享
发布于 02-06 00:22 辽宁

相关推荐

算法:LC3. 无重复字符的最长子串(mid,ACM模式,自己写输入输出,直接秒)无项目拷打,只让讲了项目中缓存穿透、缓存击穿、缓存一致性的解决方案。大多时间拷打八股,主要是Mysql、Redis和Kafka(项目中有用到),还有计算机网络。Mysql和Redis考得很深,问了一些工程问题的解决方案没答得很好,最后面试官说知识的广度挺好、深度有欠缺1. SQL事务题,这两个事务同时执行,说明它们的执行流程,失败还是成功-- 表 t 有主键 id,值为 1, 3, 5, 10, 15, 20-- 事务 ASELECT * FROM t WHERE id = 7 FOR UPDATE;-- 事务 BINSERT INTO t VALUES (6, ...);INSERT INTO t VALUES (8, ...);INSERT INTO t VALUES (11, ...);2. Mysql的事务是什么?有哪些特性?3. Mysql的原子性底层如何实现?(undo log)4. 讲一下Mysql的MVCC机制的实现原理(readview、undo log、隐藏字段)5. Mysql的覆盖索引、前缀索引、索引下推分别是什么?6. 如何定位和优化慢SQL语句?(慢查询日志、explain关键字)7. 使用explain分析慢SQL语句时,哪些字段比较重要?8. Mysql的主从复制的数据同步流程是怎样的?(binlog、offset)9. 介绍下Redis的常用数据类型10. 讲一下你项目中如何解决缓存穿透、缓存击穿和缓存一致性问题?11. 如何使用kafka解决消息丢失问题?12. 如何使用kafka防止消息的重复消费问题?13. kafka发送消息时,如果因为网络问题出现消息丢失,如何解决?14. 从浏览器输入百度的网址访问网页的网络过程是怎样的?15. HTTP和HTTPS的区别是什么?
查看15道真题和解析
点赞 评论 收藏
分享
评论
3
8
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务