美团到店餐饮SaaS面经(已offer)

一面(4-1)

  1. Java是自学的还是教的,如何自学的

  2. 数据量有多大

  3. 介绍一下加密检索

  4. 对中台的理解

  5. TCP三次握手

    • 追问1: 为什么一定要3次,不能两次

  6. 介绍一下JVM有哪几块

    • 追问1: 哪些是线程私有的,哪些是线程共享的

  7. 了解metaSpace嘛

  8. JVM如何判断对象能不能回收

  9. 重写equals方法时,为什么一定要重写hashCode方法

  10. 介绍一下Java的双亲委派模型

    • 追问1: 类加载器分为哪几类(Bootstrap ClassLoader、Extension ClassLoader、 Application ClassLoader)

  11. Integer a = 128; Integer b = 128; Integer c = 64; Integer d = 64;a==b和c==d分别输出什么,为什么

  12. HashMap会检查冲突吗

    • 追问1: 建一个空map初始容量是多大

    • 追问2: map扩展的规则

    • 追问3: 每次扩容为什么要为2的幂次方

  13. 聚簇索引和非聚簇索引的区别

    • 追问1: 最左匹配原则

    • 追问2: MySQL为什么使用B+树

  14. Redis持久化方式

    • 追问1: AOF需要频繁的写入磁盘,效率是不是很低

二面(4-8)

  1. mysql的默认隔离级别是什么?有幻读问题吗

    • 追问1: RR如何解决幻读问题

    • 追问2: 编码时需要做什么事情来解决幻读?还是Mysql会自己实现

    • 追问3: RR+next key lock通过串行化解决幻读问题的吗

    • 追问4: 如何给mysql加锁(可以在select的最后加一个for update;在select 语句后加上Lock in xxxx mode)

    • 追问5: 什么是幻读?什么场景会产生幻读?

    • 追问6: 删除会出现幻读吗?为什么?

  2. 事务的特性

    • 追问1: 一个事务在修改数据库,一个事务在读数据库,如何保证原子性?(没理解什么意思)

    • 追问2: 操作时先更新数据库,还是先读数据

    • 追问3: 为什么数据库用B+树不用红黑树

    • 追问4: 什么场景适合使用红黑树

    • 追问5: 二叉树和红黑树的区别

  3. A表有5行,B表有10行。A左右连接B表有几行记录

  4. 数组和链表的区别

  5. hashMap的数据结构

    • 追问1: 为什么链表要转换为红黑树

    • 追问2: 100个元素,是否需要扩容?扩容过后是多大

    • 追问3: 为什么需要扩容到256

    • 追问4: 什么时候需要扩容

    • 追问5: threshold是多少

  6. 栈和队列的区别?适用场景?

  7. 线程的状态及转换过程

    • 追问1: blocked可以直接转换为running吗

    • 追问2: 有哪些状态可以转换到销毁状态

    • 追问3: sleep和wait的区别

    • 追问4: notify一定会会唤醒线程吗

    • 追问5: 如何保证notify一定能唤醒线程

    • 追问6: 如何知道notify唤醒哪些线程

    • 追问7: notify是如何唤醒线程的?是唤醒所有线程吗?

    • 追问8: 如何唤醒全部线程

    • 追问9: Java线程的状态

    • 追问10: Time_Waiting和Waiting的区别

    • 追问11: Waiting如何被唤醒

  8. 网络可以分为哪几层

    • 追问1: 你觉得三种分层方式最合理?为什么会出现三种分层方式

  9. Java设计原则有哪些

    • 追问1: 设计模式有哪些

    • 追问2: 工厂模式有哪几种?有什么区别?

  10. 传输层有哪些协议

    • 追问1: TCP如何实现流量控制

    • 追问2: 什么是连包问题

    • 追问3: 接收方缓存满了之后多余的报文会如何处理

    • 追问4: 糊涂窗口综合症及解决方案

    • 追问5: 这些问题在编码时需要注意吗

  11. 冯诺依计算机体系结构

    • 追问1: 每个结构说一下有哪些部件

    • 追问2: 主板属于哪些结构

  12. TCP可以双向发送请求吗

    • 追问1: HTTP可以双向发送请求吗

    • 追问2: HTTP和TCP是长连接吗

      HTTP1.0是短链接的,每次请求都需要重新建立TCP连接,HTTP1.1及以后默认是长连接的,通过响应头的Connection:keep-alive来保证长连接。keep-alive不会永久保持连接,他有一个连接时间,在不同的软件中有不同的大小。

    • 追问3: HTTP如何支持的长连接

    • 追问4: HTTP数据传输的过程

    • 追问5: HTTP如何保证可以一直接收到客户端的请求

    • 追问6: HTTP是串行接收还是并行接收

    • 追问7: HTTP如何知道回复的是哪一部分信息
4-10号OC
4-12号offer
#美团##实习##面经#
全部评论
好快哦,楼主base哪里?
1 回复 分享
发布于 2022-04-12 21:29
感谢分享
点赞 回复 分享
发布于 2024-03-08 19:40 浙江
羡慕
点赞 回复 分享
发布于 2022-05-21 14:32
大哥是985、211吗
点赞 回复 分享
发布于 2022-04-14 00:37
打算去实习吗,可以加个联系方式,一块租房啥的
点赞 回复 分享
发布于 2022-04-13 23:34

相关推荐

09-16 05:45
在打卡的95后:挂就挂吧,反正小红书的食堂一般
投递小红书等公司10个岗位
点赞 评论 收藏
分享
我承认之前说话大声了点,没开摄像头也不算KPI,虽然二面还是没开摄像头,但至少约面了嘛开始就简单自我介绍,针对项目进行阐述,对答还算流畅,但是有的实际高并发场景细节并没有答上。八股部分就问了常见的redis八股,比如击穿、穿透、雪崩以及应对策略,最后雪崩的应对策略没答全,但也差不多了。算法题有点难第一个是,循环输出启动3个线程,分别循环打印1、2、3,并且要求输出顺序严格为"12312312.3."。让三个线程交替输出自己的内容,我准备的不大充分,之前遇到过,但看答案有接近一百行,写不出来。第二个是,对于一个含有n个元素的数组,可以划分为m个小数组使他们和相同,比如数组为{1,3,4,2,2}时,n=5,可以划分为m=1,{1,2,3,4,2}; 当m=2时 {1,2,3}和{2,4}各自和为6;当 m=3时{1,3}、{2,2}、{4}各自和为4;当m=4时不可划分,所以m最大为3。请你设计一个算法,对于任意输入的数组,求m最大值。类似leetcode40题组合2,但比那个复杂的多,因为target要自己一个个去尝试,并且元素不能重复使用,我事后花了一个晚上才写出来,幸好面试时没有死磕。第三题是,统计一个字符串中出现最多的字符,我直接用128位的int数组计数,面试官问我冗余空间,我说使用map会引入更多内存,且效率没数组高。最后还有一个开放性智力题,问我如何估算一个地区的奶茶店总数目。我本来想着直接美团上看附近的店家数据,但是这只能限定距离范围,无法覆盖全市。所以想着通过各个商家自己的微信小程序,计算前10个品牌(比如蜜雪、霸王、茶百道、瑞幸……)在该地区的总数目n,再在某个商圈进行抽样,找到这10家品牌占总共奶茶店的数目(比如占比70%),那么全地区的数目可以用n/70%来粗略估算。
点赞 评论 收藏
分享
评论
7
82
分享

创作者周榜

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