阿里 Java 二面面经

一、项目与场景题

  1. 介绍一个你最熟悉的项目,主要负责哪些模块?
  2. 项目中遇到过哪些性能瓶颈?你是如何排查和优化的?
  3. 系统并发量是多少?你是怎么设计线程池或限流方案的?
  4. 如果接口响应时间突然变慢,你会如何定位问题?

二、Java 核心与并发

  1. HashMap 在 JDK 1.7 和 1.8 的底层实现有什么区别?
  2. ConcurrentHashMap 为什么能保证线程安全?底层用到哪些机制?
  3. volatile 的作用是什么?能否保证原子性?
  4. synchronized 和 ReentrantLock 的区别?
  5. 线程池的核心参数有哪些?拒绝策略怎么选?
  6. ThreadLocal 的原理和内存泄漏风险?

三、JVM 与内存管理

  1. JVM 内存结构包括哪些区域?
  2. Minor GC、Major GC、Full GC 的触发条件?
  3. CMS 和 G1 收集器的区别?
  4. 对象进入老年代的条件有哪些?
  5. 出现内存泄漏时怎么排查?
  6. 类加载过程和双亲委派机制?

四、数据库与缓存

  1. MySQL 为什么使用 B+ 树做索引?
  2. 事务的四大特性(ACID)及隔离级别?
  3. Redis 常见数据结构及应用场景?
  4. 如何防止缓存雪崩、穿透、击穿?
  5. Redis 分布式锁如何实现?
  6. Redis 的持久化方式 RDB 和 AOF 有何区别?

五、系统设计与分布式

  1. 如何设计一个高并发秒杀系统?
  2. 系统 QPS 从 1k 提升到 10k,要做哪些架构优化?
  3. 分布式系统中如何保证幂等性?
  4. 微服务间接口调用失败如何处理?
  5. 分布式事务有哪些实现方案?

六、算法与代码题

  1. 手写 LRU 缓存实现。
  2. 实现一个线程安全的单例模式。
  3. 查找字符串中最长不重复子串长度。
  4. 反转链表或查找链表倒数第 K 个节点。

全网最全面的java面试八股文专栏:https://www.nowcoder.com/creation/manager/columnDetail/0n9XOd

全部评论

相关推荐

总时长140min实习+项目拷打+场景拷打实习拷打项目拷打场景:1.用户订单表索引设计,从插入,业务价值,查询多方面解释索引设计原理2.给出每行数据大小,计算单表建议数据量,分库分表相关内容3.Redis缓存场景,目前命中率90%,进一步提升?(过期时间,淘汰策略,数据结构优化)4.还有一部分不记得了到此基本1hour八股:1.Mysql索引类型,主键索引和聚簇索引的关系(我寻思叶子节点和其他索引的区别呢,结果说是一种实现,确实没想到)2.B+树 vs B树 vs B*树3.Java 集合类,List,Map不同实现类以及选型,红黑树和平衡二叉树选型4.ConcurrentHashMap 线程安全实现,为什么要用synchronized等等5.线程池核心参数,任务提交 > 消费速度时的行为,以及给出多个场景要求给出设置(答得稀烂)6.为何选 Kafka 而非 RabbitMQ,架构上等多方面区别7.Kafka 高吞吐原理(二进制协议,零拷贝等等),拉模式 vs 推模式适用场景8.MQ如何避免任务重复执行9. Spring Boot解决的核心问题,Springboot启动细节(这个完全不会,说不是自动配置以及服务器相关的,说可以往除了spring外的web框架想想,也是想不到)算法&手撕:1.三数之和2.线程池相关3.给出需求,要求接口以及实现按照设计模式范式编写真的好长啊,答的最烂的一次,面到最后快晕过去了(面试官也是昏昏欲睡)。最主要面试官技术很牛,每个八股,场景,项目问题都会追问到底层,业务价值等等层面。攒人品
投递淘天集团等公司6个岗位
点赞 评论 收藏
分享
评论
1
5
分享

创作者周榜

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