美团一面+二面(凉)

24暑期实习,部门:数据库研发中心

第一次笔试一题没A,第二次笔试只A了一题

3.15 一面

算法题:排序链表

Go调优相关,怎么调优的

如果一个程序对他进行计算压测,但CPU跑不满,这种情况会往哪方面去想

协程与线程的区别

Go协程什么情况下会主动让资源(IO等被阻塞的情况)

Java学的怎么样,了解主流的垃圾收集器等

MySQL为什么要读写分离(读多写少,减少主库压力)

读写分离的问题在哪,可以怎么解决(读写同步延迟,应用层方面别在刚写完就读从库,主要在应用层控制)

为什么要分库分表,分库分表后要注意哪些(数据一致性,要考虑分布式事务)

分布式事务相关的(2PC XA 3PC TCC saga),XA 怎么做的

分库分表后除了要考虑分布式事务,还有什么要考虑的(不会)

乐观锁,悲观锁

Redis的持久化方式(RDB AOF 混合)

RDB为什么会丢数据(RDB保存全量快照前挂掉)

RDB时发生修改,内存膨胀问题,触发COW后是全量拷贝还是只拷贝修改的那部分(答的只拷贝修改的那部分所在的操作系统page)

Redis 的 I/O 模型

CAP简单聊一下

MySQL 是 CP 还是 AP(一般情况的主从是AP,因为是最终一致)

如果要MySQL提供 CP 怎么办(节点完全同步前别对外提供相应的服务,就是实现强一致事务)

如果 CP 情况下,主节点挂了怎么办(不了解,没背八股,瞎b扯一般配个哨兵用 binlog 恢复,要是全挂了那也没办法,因为要保存最终一致性)

对 multi paxos 有多少了解

raft preVote优化

基于 raft 的分布式kv,如何实现线性一致性,怎么保证不重复执行写指令的

client 的 ID 怎么实现的(项目rand.Int64(),分布式情况应该用雪花算法实现分布式ID)

如果 client 宕机了,怎么保证不重复执行写(宕机了的话再启动,client ID 都变了,已经是新的一轮请求了)

BusTub项目,4种隔离级别怎么实现的,读提交和可重复读的区别

文件系统有没有了解,对刷脏页的理解(往数据库项目的BufferPoolManager扯,然后又介绍了下OS的页面置换,最后说了句思想都差不多)

反问

3.17约了二面

3.22 美团二面(凉)

实现的 BusTub 数据库里,BufferPool 的作用,数据库层面抽象的 Page 和操作系统的 Page 的区别,读一个数据库逻辑 Page 进内存大概什么情况

为什么操作系统实现了页面置换,在数据库层面还要维护一个 BufferPool

操作系统的页面置换算法,会对数据库层面实现的页面置换算法,有什么影响

LRU 置换算法怎么实现的,LRU-K 呢

LRU-K 和 LRU 的比较,有被 LRU 的性能卡过么

可扩展哈希索引的实现

3节点的 Raft 集群,如果要更新一个节点,怎么办(先把新的加入集群,再把老的下掉,不能反过来,要保证半数以上可用)

更新节点的具体流程是什么

如果有非常多的 Raft 节点,分了很多集群,有哪些要注意的

平时遇到的印象最深刻的 bug

乐观锁和悲观锁的区别

乐观锁和悲观锁,放在数据库的角度,分别应用在哪里(乐观锁应该是 mvcc)

考虑两个不同的事务去操作一个表,执行 Insert 呢(这种情况要考虑幻读,不要 mvcc,但纯加锁实现的隔离级别也不顶用,除非实现 Serialize 级别,后面说可以和 MySQL 一样整间隙锁)

mvcc 除了用作实现隔离级别,别的还有了解其他用途么

算法题没让做,说看一面写的代码风格还不错

在字节有考虑过活水啥的么,字节转正不,未来倾向做计算还是做存储

反问

3.27 人才库了

#我的失利项目复盘##美团##暑期实习##面经#
全部评论
这问的也太难了。。。真的牛
9 回复 分享
发布于 2023-03-28 13:00 新加坡
一个暑期实习就抓着问这么多分布式,服了
3 回复 分享
发布于 2023-03-29 10:02 新加坡
好牛逼
1 回复 分享
发布于 2023-03-30 23:55 广东
老哥转码学这么多很牛了
点赞 回复 分享
发布于 2023-03-27 20:24 湖北
我是go面美团盯着问java,结果一个不会
点赞 回复 分享
发布于 2023-03-27 20:35 上海
大佬我也这个部门 24二面的还没消息
点赞 回复 分享
发布于 2023-03-27 20:49 四川
笔试对结果影响大吗
点赞 回复 分享
发布于 2023-03-28 00:41 美国
哥们,面的啥岗位?
点赞 回复 分享
发布于 2023-03-28 03:46 北京
”3节点的 Raft 集群,如果要更新一个节点,怎么办(先把新的加入集群,再把老的下掉,不能反过来,要保证半数以上可用)“ 我的理解是应该先把老的下掉,再把新的上去。 考虑的是二分网络分区: 假设先增再删,abc->abcd->bcd,ad同机房,那么在abcd的中间态,可能存在网络分区ab|cd导致网络不可用。 而先删再增,abc->bc->bcd,一没有上面的abcd中间态。二对于半数问题,实际上在中间阶段的配置是只有bc两阶段,那么raft两节点互选是可以的。 参考https://zhuanlan.zhihu.com/p/359206808
点赞 回复 分享
发布于 2023-03-28 14:00 上海
分库分表可能还要考虑外键和join?
点赞 回复 分享
发布于 2023-03-28 14:24 上海
这都能人才库,得多牛逼才能面过
点赞 回复 分享
发布于 2023-03-29 03:37 美国
楼主有mysql、redis的书或者其他学习资料推荐吗
点赞 回复 分享
发布于 2023-03-29 13:16 浙江
笑死,和我面的问题都是一样的
点赞 回复 分享
发布于 2023-03-29 17:50 浙江
所以是不是不招人了
点赞 回复 分享
发布于 2023-03-30 19:14 湖北

相关推荐

一面 56分钟1.自我介绍2.部门介绍 (财务平台-财务科技)部门主要是负责美团这边的发票和税务相关,例如美团需要交多少的税等等3.实习实习持续的时间有多长?在那边主要完成的工作是什么?这些接口是给谁调用的?4.场景题有一张表,里面有三个字段,id,开始时间,结束时间,然后数据量为5000W,怎么统计一天中流量最大的时候有多少条数据?一开始没有明白面试官的意思,询问流量最大的时候是什么意思,面试官告知可以以秒作为单位,统计每秒的最大值。面试官问用sql怎么写?sql不太会写,跟面试官表达不会。然后面试官说这个怎么读取到内存中?然后面试官说怎么用java代码写?本来想使用C++写,被面试官拒绝,只能使用java。然后面试官又提示说可以用什么数据结构去完成?面试官问到差分的原理?面试官没有给环境,要求自己在本地使用代码编辑器共享屏幕写。实现差分代码的编写,过程中遇到了数组扩容问题,在面试官提示下修改代码最后直到他满意。5.八股java中哈希表的相关原理。java中synchronized关键字是否是可重入的synchronized底层是怎么实现的6.个人以后的发展方向是什么样子的?7.反问部门的具体业务?财务统计报表相关面试的流程?可能会有3-4面二面  50分钟1.部门介绍2.自我介绍3.实习3.1 实习持续的时间不到两个月吧?3.2 为什么在那边只呆了这么短时间?3.3 这个项目主要是干什么的?3.4 这个消息推送功能应该公司内部非常成熟才对?3.5 同步转成异步这一块是怎么做的?3.6 这个项目感觉不是偏向于业务方面,是偏向于改进方面的是吗?4.八股4.1线程池是怎么创建的?4.2线程池中的每个参数有什么用?4.3 你在项目中是怎么使用线程池的?5. 算法题统计频次最大的数字(大数据场景)6. 生活6.1 有没有获得过什么奖项?有一些数学竞赛的奖项6.2 有没有过社团经验,具体讲讲有什么收获?6.3 做过的一件比较有成就的事情是什么,展开讲讲?6.4 如果你现在要学习一门新的技术,你的方法是什么?7.反问7.1 部门这边具体的业务是什么样子的,具体会用到哪些技术栈?部门这边处理公司税务报表,同时也需要使用大数据来对数据进行分析等等。7.2 面试的流程是什么样子的?听说还有hr面
查看28道真题和解析
点赞 评论 收藏
分享
12 117 评论
分享
牛客网
牛客企业服务