超星集团java一面
一、基础与中间件
Q1:线程池的参数一般怎么设置?依据是什么?
A:主要看任务是 IO 密集型还是 CPU 密集型。IO 密集型可设核心线程数为 2N(N 为 CPU 核数),CPU 密集型设为 N+1;最大线程数和队列长度根据业务负载调整,拒绝策略按场景选择(如丢弃或由提交线程执行)。
✅ 思路正确,但未明确“N 是 CPU 核数”,且拒绝策略表述可更规范。
Q2:G1 垃圾回收器的设计原理是什么?
A:先初始标记 root 对象,再并发标记,然后重新标记修正,最后回收被标记对象。优化可调大堆内存减少 GC 频率。
⚠️ 流程大致对,但未提 G1 核心机制(Region 分区、Remembered Set、Mixed GC),术语不够准确。
Q3:MySQL 可重复读(RR)下如何避免幻读?
A:InnoDB 通过 MVCC 和加锁机制防止幻读。
✅ 方向正确,但未说明具体是 Next-Key Lock(记录锁 + 间隙锁) 实现。
Q4:SQL 走了索引还是很慢,怎么优化?
A:先看执行计划是否真走索引(避免隐式转换、最左匹配失效);若数据量大,考虑分库分表;还可加缓存,用消息队列更新缓存。
✅ 思路完整,覆盖排查 → 架构 → 缓存三层优化。
Q5:如何保证缓存(Redis)和数据库的一致性?
A:更新数据库后删除缓存;读时若缓存为空,再查 DB 并回填。实习中也用过“写 DB 后更新缓存”。
⚠️ 未明确推荐方案是 “先更新 DB,再删缓存”(Cache-Aside 模式),后者易引发脏读。
Q6:Redis 缓存雪崩怎么解决?
A:给缓存设置随机过期时间;热点 key 更新时加锁,只让一个线程重建缓存,其他等待。
✅ 回答清晰,覆盖主流方案(过期打散 + 互斥重建)。
Q7:Kafka 如何保证消息不丢失、不重复消费?
A:不丢:靠副本机制和磁盘持久化(默认保留 7 天);不重:业务层做幂等,比如用达人 ID 去重。
✅ 工程实践优秀,结合 Kafka 特性与业务兜底。
Q8:Spring AOP 如何实现方法耗时统计?
A:自定义注解,在切面中记录方法执行前后时间,计算差值。
✅ 完全正确,简洁实用。
二、项目与实习
Q9:请讲一段你实习中做得比较关键的项目。
Q10:项目中有用到事务吗?如何保证一致性?
三、AI 与开放设计
Q11:MCP 是什么?
A:MCP 是一种协议,统一封装 AI 调用外部工具的能力(如查天气),类似 USB 接口,便于插拔扩展。
✅ 理解准确,类比形象。
Q12:如果让你用 AI 优化教务系统,你会怎么做?
A:针对教师排课,AI 可自动分析课程依赖关系,生成多套排课方案并给出推荐理由,减轻老师负担。
✅ 抓住核心痛点(排课复杂),有业务思考;可补充更多场景(如智能选课、毕业审核自动化)。
四、行为与规划
Q13:你未来的职业规划是什么?
A:坚定走后端方向,前期深耕业务与技术栈,后期考虑往技术深度或管理发展。
✅ 方向清晰;⚠️ 可更具体(如“希望深入分布式系统或云原生架构”)。
Q14:你有什么想问我们的?
A:询问部门具体负责哪个产品(学习通/学工/教务/校园信息化),以及校招流程。
✅ 体现主动性和岗位关注。
#面试问题记录##春招##牛客AI配图神器#
Q1:线程池的参数一般怎么设置?依据是什么?
A:主要看任务是 IO 密集型还是 CPU 密集型。IO 密集型可设核心线程数为 2N(N 为 CPU 核数),CPU 密集型设为 N+1;最大线程数和队列长度根据业务负载调整,拒绝策略按场景选择(如丢弃或由提交线程执行)。
✅ 思路正确,但未明确“N 是 CPU 核数”,且拒绝策略表述可更规范。
Q2:G1 垃圾回收器的设计原理是什么?
A:先初始标记 root 对象,再并发标记,然后重新标记修正,最后回收被标记对象。优化可调大堆内存减少 GC 频率。
⚠️ 流程大致对,但未提 G1 核心机制(Region 分区、Remembered Set、Mixed GC),术语不够准确。
Q3:MySQL 可重复读(RR)下如何避免幻读?
A:InnoDB 通过 MVCC 和加锁机制防止幻读。
✅ 方向正确,但未说明具体是 Next-Key Lock(记录锁 + 间隙锁) 实现。
Q4:SQL 走了索引还是很慢,怎么优化?
A:先看执行计划是否真走索引(避免隐式转换、最左匹配失效);若数据量大,考虑分库分表;还可加缓存,用消息队列更新缓存。
✅ 思路完整,覆盖排查 → 架构 → 缓存三层优化。
Q5:如何保证缓存(Redis)和数据库的一致性?
A:更新数据库后删除缓存;读时若缓存为空,再查 DB 并回填。实习中也用过“写 DB 后更新缓存”。
⚠️ 未明确推荐方案是 “先更新 DB,再删缓存”(Cache-Aside 模式),后者易引发脏读。
Q6:Redis 缓存雪崩怎么解决?
A:给缓存设置随机过期时间;热点 key 更新时加锁,只让一个线程重建缓存,其他等待。
✅ 回答清晰,覆盖主流方案(过期打散 + 互斥重建)。
Q7:Kafka 如何保证消息不丢失、不重复消费?
A:不丢:靠副本机制和磁盘持久化(默认保留 7 天);不重:业务层做幂等,比如用达人 ID 去重。
✅ 工程实践优秀,结合 Kafka 特性与业务兜底。
Q8:Spring AOP 如何实现方法耗时统计?
A:自定义注解,在切面中记录方法执行前后时间,计算差值。
✅ 完全正确,简洁实用。
二、项目与实习
Q9:请讲一段你实习中做得比较关键的项目。
Q10:项目中有用到事务吗?如何保证一致性?
三、AI 与开放设计
Q11:MCP 是什么?
A:MCP 是一种协议,统一封装 AI 调用外部工具的能力(如查天气),类似 USB 接口,便于插拔扩展。
✅ 理解准确,类比形象。
Q12:如果让你用 AI 优化教务系统,你会怎么做?
A:针对教师排课,AI 可自动分析课程依赖关系,生成多套排课方案并给出推荐理由,减轻老师负担。
✅ 抓住核心痛点(排课复杂),有业务思考;可补充更多场景(如智能选课、毕业审核自动化)。
四、行为与规划
Q13:你未来的职业规划是什么?
A:坚定走后端方向,前期深耕业务与技术栈,后期考虑往技术深度或管理发展。
✅ 方向清晰;⚠️ 可更具体(如“希望深入分布式系统或云原生架构”)。
Q14:你有什么想问我们的?
A:询问部门具体负责哪个产品(学习通/学工/教务/校园信息化),以及校招流程。
✅ 体现主动性和岗位关注。
#面试问题记录##春招##牛客AI配图神器#
全部评论
相关推荐
点赞 评论 收藏
分享