美团外卖交易暑期面经,两面狠狠拷打三个半小时后OC

timeline 3.21一面 3.25二面 3.31早上发现官网显示回到人才库遂发邮件询问原因,两小时后oc

一面(1h50min)

八股盛宴,至今为止八股最多的一场

闲聊(10min)

随便聊聊,互相自我介绍,为什么不留在字节、是否考博、家在哪、平时怎么学习。

然后开始拷打八股。

八股(1h)

  1. java有多少基本类型
  2. String是不是基本类型,保存在哪?数组呢?
  3. 包装类型是什么,和基本类型有什么区别,什么时候用包装类型什么时候用基本类型
  4. 介绍一下多态,你怎么理解多态
  5. 子类重写父类的方法,返回值能不能不一样?
  6. 比如父类方法返回String,子类重写返回Integer,行不行?
  7. 我们都知道不行,那这个不行是怎么表现出来的?直接报错吗?报什么错
  8. 那重写的方法,抛出的异常能不能和父类不一样?有什么要求
  9. 那重载的话,有什么要求吗,参数返回值有要求吗?
  10. 重载的话,参数个数能不能不同,抛出的异常能不能不同?
  11. 那重载的话,两个方法的参数和返回值能不能完全一样,抛出的异常能不能不一样?
  12. 多态就说到这,你再说说继承吧
  13. 接口直接能不能互相继承
  14. 抽象类能不能继承普通类
  15. 抽象类能不能继承抽象类
  16. 抽象类能不能实现接口
  17. Java异常有哪些
  18. 异常父类是什么
  19. Exception和Error什么区别,详细介绍下
  20. 什么时候会Error,出现了的话程序还能运行吗
  21. 说说集合,java中有哪些集合
  22. 哪些是线程安全的、哪些是线程不安全的
  23. vector怎么实现线程安全的
  24. ArrayList和LinkedList有什么区别,怎么选型
  25. map里,有哪些线程安全的、有哪些线程不安全的
  26. ConcurrentHashmap原理,怎么实现线程安全的
  27. Hashmap原理,什么时候使用Hashmap
  28. 高并发的情况下,使用Hashmap会有问题吗,性能会有影响吗
  29. java有哪些锁,介绍一下
  30. synchronized有哪些用法
  31. 对普通成员方法用的话,锁的是什么?静态方法呢?静态代码块呢?
  32. 底层是怎么加锁的
  33. ReentrantLock原理、AQS原理
  34. CLH锁队列是干什么的
  35. ReentrantLock底层修改state值是CAS吗
  36. CAS的缺陷是什么
  37. ABA问题怎么解决
  38. volatile关键字有什么用
  39. 一般什么时候用volatile,基本类型能不能用volatile修饰
  40. 线程池的核心参数
  41. java里面有哪些现成的线程池
  42. 怎么启动新线程
  43. 如何根据不同的条件来中止线程
  44. ThreadLocal怎么理解,有什么用,什么原理
  45. ThreadLocal可能会有什么问题
  46. 怎么保证ThreadLocal对象一定能被释放,如果出现了异常会不会提前终止?
  47. 说说Java内存分区,有哪些区
  48. String常量池存在哪
  49. 各个分区的大小怎么设置,有设置过吗?
  50. 如果你发现一个实例CPU非常高,怎么排查,可能是哪些问题
  51. OOM的话,怎么排查,可能是什么问题
  52. Java就问到这,再问问MySQL。MySQL有哪些引擎,有什么区别
  53. innodb索引结构是什么,为什么用B+树
  54. 隔离级别有哪些,怎么实现的
  55. 分析下SQL,有a,b的联合索引。 where a between 0 and 1 AND b between 0 and 1能不能用到索引,能用到哪些
  56. 那如果a和b分别建单列索引呢,命中哪个
  57. 怎么选具体命中哪个索引
  58. between是开区间还是闭区间
  59. 那换个数据库呢,比如oracle的between是开区间还是闭区间
  60. 那如果是a b c的联合索引,where a = x and c = x能不能用到,为什么
  61. 什么是索引下推
  62. 给一张表加一列字段的sql怎么写、加一个索引的sql怎么写
  63. linux里,如果我要统计一个日志文件的error数量用什么命令
  64. 修改文件权限用什么命令

八股就问到这,由于在字节带了快一年全在写go,Java的继承多态全忘完了,导致前面的抽象类接口答得一塌糊涂,好在其他八股还记得,当时面完还以为要挂了。。。。

实习(30min)

高并发怎么做的、字节的各种中间件底层怎么实现的怎么选型、各种极端事故出现的话怎么处理balabalabala

分库分表有哪些方法、什么时候分库、什么时候分表

平时怎么用ai,对ai了解多少

手撕(10min)

合并区间

二面(1h30min)

二面基本都在聊实习、聊交易营销业务的各种场景的解决方案

闲聊(5min)

成绩咋样、考研的还是保研的、然后说我笔试做的很一般。。。。

实习(40min)

基本都在讨论业务相关、高并发解决方案、数据一致性怎么保证、怎么保证不超卖balabala、实习中遇到的问题和bug以及怎么解决的

ai(5min)

  1. 对ai有什么了解
  2. 什么是提示词
  3. transformer的原理
  4. 向量模型听说过吗

纯业务开发没关心过ai架构,疯狂道歉。。。。

算法(10min)

链表相加

一面没答出来的八股(10min)

  1. linux中,怎么统计一个log中的error数量,写一下命令
  2. 怎么调整jvm的各种参数,写一下命令

场景(20分钟)

对于交易场景下的用户订单列表页后端怎么去实现,包括订单数据存储怎么设计、翻页查询怎么设计等

总结

至今为止面得最累的一次,两面加起来比我字节三面时间都长。。。不过好在两个面试官人都还不错,虽然题多,但压力不算太大。

#面经##暑期实习##美团##美团求职进展汇总#
全部评论
想问一下是给面试官发的邮件嘛
1 回复 分享
发布于 03-31 18:48 上海
先到人才库,再oc?
1 回复 分享
发布于 03-31 18:45 湖北
佬打算去美团了吗
点赞 回复 分享
发布于 04-11 20:49 北京
哲八股太逆天了吧
点赞 回复 分享
发布于 04-09 12:14 浙江
这一面是人啊
点赞 回复 分享
发布于 04-09 11:28 湖南
mark一下
点赞 回复 分享
发布于 04-03 17:37 山东

相关推荐

04-01 16:13
已编辑
华中科技大学 golang
#后端开发#  #暑期实习#  #后端开发#  #美团# 【听说三天没消息自动回人才库,其实已经绝望了,感恩团爹高抬贵手,不面了,当团孝子了】早知道, 还是java(bg双九无实习玩具项目  golang)一面1. 浏览器输入网址到呈现页面过程?  1. Dhcp dns http tcp ip arp 浏览器渲染【经典起手式】2. 你提到tcp协议,讲讲连接过程,具体讲讲序列号确认号关系?  1. 三次握手  2. 确认号 = 收到的对方序列号 + 1【感觉当时没讲清楚他又追问了一下】3. tcp报文结构,具体讲讲包含哪些字段及作用?  1. 说了源端口、目的端口、序列号、确认号、窗口大小、状态位、首部大小、紧急指针、选项,漏了校验和【还好面试前刚整理过】4. 你提到报文长度,这个有上限吗?  1. 有的兄弟,有的。mtu mss,具体大小忘了。【我真不记得数啊 1500好像】5. 传输层除了tcp还有别的吗?  1. UDP 然后说了说区别:数据包、无连接、不可靠,以及适用场景6. 操作系统学过吧,讲讲死锁是什么?如何避免?  1. 说了说什么循环等待不可剥夺,记不太清楚具体词了,干脆举了个例子说明了一下;  2. 破坏三个条件【汗流浃背 忘了这块了】7. 银行家算法有了解过么?具体说下思想?  1. 了解过,避免死锁的,具体忘了【两年前我肯定记得】8. 没关系,那说下cpu中断执行过程?  1. 硬中断保存上下文,然后软中断;  2. 软中断去中断向量表查处理程序入口,执行完恢复现场返回;9. 刚才提到用户态、内核态,解释一下?  1. 权限控制机制,用户空间,内核空间讲了讲【这也没背 全靠老本 感恩攻防实践TnT 】10. 看你项目用到了数据库,mysql、Redis和mongoDB?  1. 前两者用的多【mongoDB语法是真难写,千万别问我】11. 讲讲mysql和redis区别?  1. 原理上关系/非关系,结构固定/灵活;  2. mysql在磁盘中负责持久化;redis在内存中负责缓存,更快;12. 如何定义关系型/非关系型?  1. 关系型行和列,非关系型更灵活,不固定,如redis是Kv对;【浅薄认知 自信说出】13. 关系型数据库的相关规范?  1. 1nf,2nf,3nf,bcnf...【罗列了一下】14. redis为什么快?  1. 内存中;  2. 单线程多路复用;  3. 数据结构优秀,举了sds和跳表例子;15. 跳表上层下层节点数1/2的关系是固定的吗?  1. 不是,添加操作是概率性的,而且这个概率也可以调;16. 讲讲查询过程?  1. 小就向右大就向下17. 跳表节点存的是值还是范围?  1. 值18. redis持久化存储?  1. Aof rdb aof+rdb【背诵小林ing】19. aof缺点?  1. 写入恢复都慢、占内存大20. mongodb是关系型还是?为啥用?  1. 非关系;  2. 用mysql存大文档不理想,并且以后想在文章中扩展更多的内容,了解到mongodb比较合适;21. 能扩展什么类型?  1. 啥都可以,流媒体、评论嵌套都支持;22. 数据库文章会更新吗?不一致性怎么处理?  1. 延迟双删23. 能彻底避免吗?  1. 不能吧,可以考虑优化成分布式锁24. 延迟双删,第二次删除失败了,怎么处理?  1. 项目里这个是异步的,因为感觉影响不大所以没考虑处理错误;  2. 如果要考虑的话,可以引入一个补偿机制,异步删除失败的话可以发一条消息到消息队列,我们收到后去回滚一下msql【即兴发挥 知识盲区了感觉】25. 你这个回滚是mysql原生支持的,他怎么实现的,自己实现怎么办?  1. mvcc,我们也可以仿照mvcc加入版本号字段进行管理;26. kafka使用场景?  1. 异步 削峰 解藕 日志聚合 通信  2. 项目里主要是用于异步点赞数的更新,避免阻塞正常的阅读过程27. 了解kafka之外的消息队列吗?  1. 不太了解【流汗了】28. 为什么选择kafka?  1. 看博客说适合处理数据量大29. 多大?  1. 百万级【流的汗更多了】30. 从底层实现上说说不同消息队列的差异?  1. 有差异但我不清楚,讲了讲kafka的底层【我真不认识别的 呜呜】31. 重复消费问题怎么解决?  1. 幂等生产者,前端限制,加入业务相关的唯一id,加入请求id【想到啥说啥】32. 有实习过吗?  1. 没有,做过一点点开源33. 日常学习途径?  1. 博客、ai、书、前辈【去年双十二的书终于派上用场了,一本本展示】34. 用ai干啥?  1. 科研 学习 写前端35. 写题leetcode143. 重排链表36. 反问业务:交易结算方面37. 反问java怎么学【go选手落泪】---二面1. 自我介绍2. 意向城市3. 转语言吗?  1. 转,早知道还是java4. 实习过吗?  1. 没有【哭了,每次最痛的问题】5. 老师放实习吗?  1. 放的兄弟,放的6. 聊项目7. 是合作的吗?小组分工?8. 技术选型分歧怎么解决?9. 在团队中扮演什么角色?10. 讲讲项目难点,怎么解决的?11. 长短token讲讲,为啥更安全?12. 如何说服合作者重构代码?13. 项目里涉及跨库事务一致性如何处理?14. 项目里redis适用场景,和mysql一致性怎么保证?15. 项目里写了ddd,讲讲  1. 忘记删了,硬着头皮讲,最后免责声明这东西千人千面,也见不得好16. ddd不足?17. 反思你项目架构,哪些可以优化?18. 负载均衡用了啥?不同方法的优缺点?19. 怎么量化你项目的性能提升?20. 你项目的可用性如何进一步提升?21. 如何用ai改造你的项目?22. Mysql update执行过程?23. mvcc设计思路有什么好处?24. java了解吗?  1. 我说只知道语法->讲讲jvm【我直接汗流浃背了】25. 写代码去制造堆的耗尽和溢出  1. 不断Malloc小空间  2. malloc然后越界访问26. url跳转27. 一个页面跳转慢,交给你去处理,你会怎么处理这个问题?  1. 排查确认环节,然后每个环节给出解决措施28. 写题【leetcode129 求根节点到叶节点数字之和】
nihao111:忍耐王
点赞 评论 收藏
分享
04-02 16:28
苏州大学 Java
之前说结束写面经的,挂完休息两天来写了(我感觉我这段经历很奇怪,前两面简单得离谱,估计跟部门有关)——————————————————————————————————————————3.24 一面(3.26 约二面)Java里的值传递 vs 引用传递什么是反射、优缺点类加载机制jvm指令,方法调用其它方法时的jvm指令jdk17的特性nio、bio、aio 的区别粘包拆包的原因、解决方法redis的优缺点线程 vs 进程死锁OSI七层模型http vs httpshttps怎么加密单例bean线程安全?jdk动态代理 vs CGLIB@Autowire vs @Resource了解golang...
沙福林:三面这个你问他,你知道吗?你说出来我想学习一下。用lua脚本是为了保证一捆redis命令可以一起成功或者失败,并且只需要发送一次请求。java中虽然可以用redis的事务,但是事务是把所有命令放在队列然后统一提交,这个提交并不会一起成功一起失败,而是成功的成功,失败的失败,这样的话很难保证一致性,此外redis的事务也不是一起发请求,而是一起执行,逐个发请求,从性能开销和实现效果角度出发,必须用lua脚本。
点赞 评论 收藏
分享
程序员牛肉:三个工作日,三个工作日内不没有推进下一步流程的话会自动结束的
点赞 评论 收藏
分享
评论
17
82
分享

创作者周榜

更多
牛客网
牛客企业服务