美团面经,已oc

1. ThreadLocal在什么情况下会导致out of memory?
2. 阿里规范中为什么要求用static来修饰ThreadLocal变量?
3. 存储100万数据时,选HashMap还是ConcurrentHashMap?
4. 多线程情况下使用HashMap会导致什么问题?
5. HashMap扩容时需要注意什么?
6. 仿大众点评项目中缓存空值具体是怎么实现的?
7. 布隆过滤器的误判率大概是多少?
8. 仿大众点评项目中,类似微博大V发博客的场景,使用推模式还是拉模式?大粉丝量时推模式会有什么问题?
9. Redis分布式锁为什么要使用Lua脚本?纯Java代码为什么不可以?
10. 为什么选用Websocket?除了Websocket,是否考虑过其他协议(如谷歌的相关协议)?
11. 分布式环境下用schedule的关单会有什么问题?
12. 若系统扩大为分布式且单量增大,解决定时任务问题的思路有哪些?
13. 日志框架用的是log4j还是log4j2?日志应在哪些地方重点打印?
14. 碰到老应用、老系统日志不全时,如何最快地加上基础日志打点?
15. 为什么选用Mybatis plus而不选用JPA?
16. 线程池在系统里用在哪些位置?
17. 线程池的核心参数有哪些?从核心线程数达到最大线程数需要什么条件?
18. 在优惠券秒杀场景下,阻塞队列应设置多大?
19. RabbitMQ与Redis stream的推流最大区别是什么?
20. 仿大众点评项目中,最重要的几张表是哪几张?订单表应加什么索引?
21. MySQL的日志指的是哪些?集群模式最主要依赖的日志是什么?
22. 生产环境中如何避免主从同步延迟带来的故障?
23. JDK 11、17有哪些新特性?

手撕:策略模式
全部评论
三个月,接近二十场,终于面进去了
16 回复 分享
发布于 2025-07-03 15:50 江苏
怎么感觉问的有点深啊
3 回复 分享
发布于 2025-07-08 18:49 山东
mark学习
1 回复 分享
发布于 2025-07-22 20:00 吉林
mark学习
点赞 回复 分享
发布于 2025-08-29 17:14 广东
mark学习
点赞 回复 分享
发布于 2025-08-12 23:33 安徽
我还以为是大二的
点赞 回复 分享
发布于 2025-07-23 13:59 安徽
终于上岸了,关注好久
点赞 回复 分享
发布于 2025-07-23 13:03 北京
27届都这么卷了吗
点赞 回复 分享
发布于 2025-07-20 11:48 河南
mark学习
点赞 回复 分享
发布于 2025-07-15 12:47 浙江
mark学习
点赞 回复 分享
发布于 2025-07-14 13:33 北京
好想去美团啊
点赞 回复 分享
发布于 2025-07-13 10:12 上海
佬可以问一下bg吗,外卖加点评能约到面是本硕都是科大吗
点赞 回复 分享
发布于 2025-07-11 10:44 天津
哪个部门?
点赞 回复 分享
发布于 2025-07-10 17:22 上海
mark学习
点赞 回复 分享
发布于 2025-07-10 16:05 四川
佬22题怎么回答的呀
点赞 回复 分享
发布于 2025-07-10 00:46 北京
秋招还是实习啊?
点赞 回复 分享
发布于 2025-07-09 14:28 上海
mark学习
点赞 回复 分享
发布于 2025-07-09 14:12 北京
谢谢分享
点赞 回复 分享
发布于 2025-07-09 12:14 广东
mark学习
点赞 回复 分享
发布于 2025-07-09 00:49 四川
佬,这些问题怎么记录的,面试录音吗,这个思维导图怎么生成的
点赞 回复 分享
发布于 2025-07-07 07:53 陕西

相关推荐

2025-12-16 21:26
蚌埠坦克学院 golang
一、 技术深度问题A. 关于“身份识别与访问管理”项目系统部署与架构:这个系统的部署方式是怎样的?(本地部署、Docker部署等?)请描述一下这个服务的整体架构。JWT 技术细节:能简单说一下 JWT Token 的构成是什么样的吗?JWT Token 的头部(Header)一般包含什么内容?JWT Token 的载荷(Payload)部分,反解出来后一般会有什么内容?从一个业务逻辑上理解,要实现用户认证,这个 Payload 里应该放什么内容?加密算法为什么要放在 Payload 里?(面试官指出这是不合理的,意在考察理解深度)数据库设计:请说明用户表、角色表和权限表的库表设计,都有哪些字段?为什么要在用户表里存一个 Token?既然已经有 JWT Token 了,为什么还要把 Token 存在数据库里?你库表里面存的 Token 是什么信息?和 JWT Token 是什么关系?(面试官追问)这个 Token 存的是什么信息?技术选型与对比:有了解或使用过 Casdoor 或 Casbin 这类开源方案吗?B. 关于“校园社交平台”项目项目功能与设计:请说一下这个平台主要做了什么,流程是怎样的?登录方式用的是什幺?除了创建用户和发送文章,这个项目还有别的补充说明吗?比如库表设计或交互流程?帖子、文章和评论的库表是如何设计的?它们之间如何关联?有实现多级评论(评论中再评论)的功能吗?C. 通用技术问题(系统、数据库、语言)问题排查与性能优化:假设你开发的一个 API 接口,单个请求返回时间长达 4 秒,你会如何定位这个问题?如果发现是函数中查询数据库缓慢,又该如何定位?Docker:能简单说一下 Dockerfile 一般包含什么内容吗?有了解基础镜像(Base Image)吗?Go 语言底层:在 Go 语言中,对 map 执行 delete操作,如果 key 不存在,会有什么现象?如果 key 存在,删除后会立即释放内存吗?Go 语言中的 interface 能直接比较吗?Go 语言并发与上下文:对 context有了解吗?能简单说一下它一般用在什么地方吗?能举例说明会把什么数据存进 context里吗?数据库/SQL 优化:能说一下一般如何优化 SQL 语句吗?
查看28道真题和解析
点赞 评论 收藏
分享
2025-12-12 09:10
门头沟学院 Java
一面: 1. 自我介绍2. 介绍两个项目中感觉比较有技术含量的点(防止超额报名,还有滑动窗口限流)3. 活动报名场景,如果一天有几万个人报名怎么办,一小时几万人呢,可能想问redis的大key问题4. redis单线程为啥性能好,引出了IO多路复用模型的select、poll、epoll,为什么zset用跳表不用B+树或B树,跳表为啥性能好,追问为啥单线程而不是多线程5. 假设想做一个排行榜,一个按分数排序,如果分数相同了按照报名时间排序,1万个数据里面想要找到top10应该怎么设计6. redis有哪些数据类型,然后redis 的 List 类型做一个队列应该怎么做呢7. zset里面存报名数据应不应该清除,什么时候清呢?8. zSet与MySQL之间通过RocketMQ发数据,RocketMQ有持久化机制和重试机制,为什么还要有对账机制9. InnoDB有个AB联合索引,有个查询语句select B from 这个表 where A = 1,走不走索引,回不回表,你觉得一定会走索引吗10. 还是AB联合索引,update A = 100 where B = 100,这条语句有没有什么问题?11. 如果有个AService、里面有个方法A,方法B都有@Transactional注解,C需要引用A和B方法,事务会不会失效?12. CAS 相对于直接加锁有什么好处?13. 策略模式和状态模式最大的区别什么?14. 接口是个抽象,咱们在使用接口的时候都需要自己写个实现类去实现接口,然后重写调用实现类才能执行逻辑,Mybatis为啥只有Mapper接口和XML就可以而不用写具体实现类的逻辑?15. 为啥用了RocketMQ而不是Kafka16. 怎么保证RocketMQ不丢失消息17. 假设现在有个线程池,核心线程数 2个,最大线程数100,阻塞队列100,来了100个任务,每个任务执行时间1s,多长时间执行完(50秒),那200个任务呢18. 力扣92的反转链表II(10分钟没写完)二面(主管面):1.自我介绍2.项目中认为的难点3.项目做的背景是啥 为啥要做这个项目4.最近学了什么5.了不了解大模型,Spring AI之类的6. 兴趣爱好 最有成就感的事 能体现最有毅力的事是啥之类的
查看28道真题和解析
点赞 评论 收藏
分享
1.Q:你先做一个自我介绍吧。A:自我介绍。2.Q:看你写了蓝桥杯,应该对算法有所涉及,给我讲一下DFS和BFS。A:讲解了一下DFS和BFS是上面和思路,面试官让我实现我不会。3.Q:在Java中是怎么实现DFS和BFS的?A:不会,没有实现过,C语言我使用数组实现过,但是具体我也忘了。4.Q:我们跳过算法,讲一下Java,说一下你知道的集合。A:用的最多的是ArrayList,然后还有LinkedList。5.Q:比较一下二者的区别。A:ArrayList的底层数据结构是一个动态数组;LinkedList底层实现是链表,主要是数组和链表的区别。6.Q:ArrayList底层是怎么实现动态数组的?(ArrayList扩容原理)A:不会。7.Q:说一下你知道的Map。A:主要使用的比较多的是HashMap,然后可以排序的Map有TreeMap。8.Q:说一下TreeMap是怎么实现排序的?A:底层是使用红黑树进行排序的,但是具体实现我也不知道。9.Q:讲一下Java创建线程的几个方式。A:我知道有四种创建线程的方式:1.继承Thread类,2.实现Runnable接口,3.实现Callable接口,4.通过线程池创建。10.Q:线程池的几个重要的参数。A:核心线程数,最大线程数,工作队列……11.Q:线程池中的工作队列是一个什么队列?A:不知道。12.Q:通过继承Thread类创建的线程,如何运行?A:调用run方法,面试官说“注意是继承Thread方法,不是Runnable接口哦。”,调用start方法。13.Q:线程调用start方法之后处于什么状态?A:处于就绪状态。14.Q:在什么情况下会从就绪态转换为运行态?A:获得锁(好像是错的),或者其他线程调用notify方法唤醒该线程。15.Q:说一下你知道的锁。A:主要分悲观锁和乐观锁,悲观锁是线程必须要持锁才可以执行,其他线程必须等待锁释放,我使用过的有Synchronized锁;乐观锁是线程无需等待持锁线程释放锁也可以执行,主要有版本号法和CAS算法,我使用过版本号法。16.Q:说一下版本号法的具体实现。A:通过数据库存储版本号字段实现。17.Q:你知道哪些线程安全的集合?A:额……不知道。18.Q:讲一下Java中的线程和操作系统中的线程的区别。A:JVM虚拟机中的内存是一种用户级别的线程,操作系统线程是系统级线程,但是在JDK1.8(好像是)之后JVM虚拟机的线程直接使用操作系统的线程。19.Q:讲一下你知道的IO。A:我主要知道两种IO吧,最普通的InputStream、OutputStream;然后后面引入了NIO,可以使用直接内存。20.Q:详细讲一下NIO。A:不会了。21.Q:说一下SpringBoot中,你知道的注解。A:三层架构的注解,RestController,RequestBody,AutoWired……22.Q:说一下RestController和Controller的区别。A:RestController注解中有Controller,并且里面还有ResponseBody,然后一般是REST风格使用。23.Q:讲一下REST风格。A:具体定义我不知道,我讲了一下应用方面的REST风格。24.Q:讲一下HTTP协议的主要请求方法。A:Get和Post,然后讲了一下Get和Post的区别。25.Q:HTTP协议的请求头、响应头有哪些?A:随便说了几个我记得的。26.Q:讲一下HTTP响应码。A:200,404,401,403,500……27.Q:讲一下401和403的区别。A:401是未登录,认证失败吧,403是访问被拒绝。401是请求到了服务器,被拦截器之类的处理了;403是请求没有进入服务器就直接被拒绝了(错的离谱)28.Q:你项目是怎么实现登录鉴权的?A:讲了一下项目的登录流程,但是项目没有用到鉴权。29.Q:JWT令牌里面存了些什么,怎么防篡改?A:存了时间戳(太久没用了,我只记得有个这个了),防篡改我只知道是工具生成的,如果篡改了就无法解析成功。30.Q:了解过SpringSecurity吗?A:我只知道有这个东西,没学过也没用过。31.Q:说一下MyBatis底层原理A:我知道是反射和动态代理,然后我解释了一下反射(举例子解释的),MyBatis具体是怎么通过反射实现的我不知。32.Q:用过MyBatis中的xml配置实现SQL吗?A:用过,xml文件一般是用于实现MyBatis的条件查询或者复杂查询。应该还有一些问题,但是过了几天我已经忘了,面试官人挺好的,不会的问题先是引导,引导完了之后还不会就直接跳过了,不会在同一个问题一直追着问,然后给出的讲解也很清晰。鼠鼠是第一次面试到这么技术的,然后感觉自己还是太弱了,需要继续努力。
斫桂:感觉还行,继续努力
0经验如何找实习?
点赞 评论 收藏
分享
评论
70
395
分享

创作者周榜

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