美团到店餐饮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

相关推荐

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脚本。
点赞 评论 收藏
分享
一面(1h):一面忘记录了,随便记了一点。感觉沟通不畅,不过还是过了。早上面试,晚上通知二面1. 自我介绍2. 项目的应用场景介绍3. Spring Boot 和 Spring Cloud用在哪些地方4. 为什么要用 Lua + Redis 判断是否需要图形验证码5. 对哪些库表进行分库分表6. 为什么要用基因法改造7. 为什么要用Es8. 分片策略是什么9. Redisson封装多种分布式锁,怎么做的,用在哪里    1. 我这边创建了ServiceLocker的接口,然后用具体的实现类去实现这个接口。然后把对应的key和锁类型放到map的结构里,通过ManageLocker提供对外的服务,然后具体的锁里面是有redisson客户端的,通过这个客户端对传入的key进行获取。10. 分布锁用在哪里    1. 可重入锁:在防止缓存穿透的时候会用到,使用了双重检测的方式防止请求达到数据库。    2. 读锁:对应票档的数据、座位数据存在redis如果不加锁,又有其他线程进行写入会有脏读。11. 限流算法有哪些12. 为什么要用令牌桶13. 说说JUC14. 说说JVM15. 算法:翻转链表16. 算法:股票(最基础的那题)17. 反问:美团直播18. base:北京,上海二面:我的评价就是神,这leader我简直爱死,很真诚地在和我聊业务、技术栈的选择,还有以后的职业规划。1. 算法:二叉树的最大路径和2. 进程、线程、协程3. 总结一下并发相关的和锁4. B+树和跳表5. SpringBoot和SpringCloud作用6. IOC和AOP7. SpringAOP和传统AOP有什么区别8. 开始安利美团,聊人生9. 反问业务二面是晚上面的,第二天下午oc。然后下周一腾讯发offer了,周二我让leader帮我跟进一下,半小时后offer,太爱了!
查看23道真题和解析
点赞 评论 收藏
分享
04-20 18:42
已编辑
门头沟学院 Java
后端一面3.19待记录。。。后端二面3.211.ai写一个js脚本2.场景题数开一面4.21. 怎么用布隆过滤器解决缓存穿透的问题2.布隆过滤器不能删除的话,那么假设现在有个场景是需要对访问的数据进行一个删除,那么要怎么设计3. redisson怎么实现分布式锁4.项目5.HashMap的扩容机制6.锁升级7. mysql事务的隔离级别以及其实现8. bitmap怎么实现用户签到功能9. bitmap保存每个用户当前月的签到情况的话,在用户量很大的情况下可能会导致内存占用过多,有没有什么解决的好办法10.在用户量不大的情况下,将所有用户签到存在一个bitmap中怎么实现手撕:k个一组反转链表数开二面4.8:1. Java基本数据类型2. 讲一下在项目工程中使用long的例子3. 用过byte吗4. 介绍一下什么是多态5. 介绍一下深拷贝和浅拷贝的区别6. 在工程中是如何实现深拷贝的7. 讲一讲什么是函数式接口8. 使用过lambda表达式吗9. 什么是事务10. 事务的四大特性11. 在工程中是如何实现事务的12. Spring框架有两个IoC容器能介绍下吗13. 能不能介绍一下什么是动态代理14. 之前有用过动态代理写过一些东西吗15.项目16. 当你的系统出了问题的时候,作为一个研发,你是怎么了解到你的系统出了问题17. 你系统中的日志都存在哪个地方18. 用过哪些消息队列,怎么选型的19. redis有哪些数据结构20. 缓存三剑客的含义和解决方案21. 能不能介绍一下在工程中用到的一些比较好用的提效的工具或者插件22. 介绍一下你在学习或者开发工程中遇到的比较困难的事情23. 最近有学习一些新的东西吗24. 受到同学或者老师最严厉的批评是什么25. 分享一个印象最深刻的周围人让你最不舒服的经历
点赞 评论 收藏
分享
评论
7
82
分享

创作者周榜

更多
牛客网
牛客企业服务