秋招面经-菜鸟集团-研发工程师JAVA 一面
1、自我介绍
2、请你花 5min 左右介绍一下项目一的背景和你做的工作
3、你们的缓存和 DB 用的什么一致性策略?是强一致的吗?
4、目前两级存储都是做的单机部署,你的这个策略能否应用到分布式的场景?如果应用到分布式场景下,需要考虑哪些问题?
5、浅谈实习(6min)
6、项目中用到了 ES,请你谈谈 ES 和 Lucene 的关系
7、ES 是怎么实现高效检索的?
8、ES 的数据查询是放在内存中还是磁盘中?
9、MySQL 会存在深分页查询,ES会存在吗?
10、MySQL 中我如果执行一条 select 语句,limit 100,100; 那么实际在数据库中检索了多少行数据?
11、处理 MySQL 深分页查询的手段有哪些?
12、你觉得现在的大型商业产品是如何去处理深分页问题的?比如 Google 或者百度,怎么处理深分页的?
13、项目中用到了 AI 扩图,简单讲讲
14、平时有去了解过 AI 相关的一些技术原理或者说相关知识吗?
15、谈谈你如何理解大模型这三个字?
16、回到大模型的使用场景,你和它聊天,它是具有上下文的记忆功能的,你觉得这个记忆的功能是大模型提供的能力吗?大模型是有状态的吗?
17、大模型是如何去驱动一些任务的执行的?比如订机票,打开网页等操作,为什么大模型能够去订机票?为什么它能够打开网页?
18、给你提一个需求:假如一个城市,有 100 万个菜鸟的包裹柜,一个城市一天可能会有 1 亿 哥包裹的存取。现在给你这 1 亿个包裹的存入和取出时间,用一个数组来存储。假设这些包裹都是在一天内进行存入并取出的。现在的问题是:如何找出这一天中的哪个时间段包裹没有被取出来的数目是最多的?以及它们所在的时间段是多长的时间?你的方案的时间和空间复杂度是多少?
19、项目中使用了分布式锁,谈谈基于 Redis 如何实现分布式锁?
20、除了 Redis 实现分布式锁以外,还有其它哪些方案?
21、分布式环境下,对于 MySQL 数据库而言,可以用什么手段来保证数据的唯一性?
22、数据库的唯一索引对 null 支持吗?可以支持两个 null 数据吗?它是唯一的还是不唯一的?
23、反问