高驰全栈一面:Java 并发、MySQL 索引与事务
- 轮次
- 一面
- 结果
- 一面通过,约二面
- 时间
- 2026-09
- 来源
- 牛客网
《面试题目》
- 能否做一下自我介绍?
- 实习具体解决了什么问题,采用了哪些技术,取得了什么效果?
- Java 中有哪些锁,如何保证并发安全?
- MySQL 索引和事务分别解决什么问题?
《参考解析》
并发安全先找共享状态
先说哪些数据会被多个线程同时读写,哪些操作需要作为一个整体完成。例如库存扣减是“检查库存并扣减”,只保证某次读或某次写安全还不够。可以用同步块、显式锁或适当的原子操作保护临界区,也可以减少共享可变状态。
如果库存实际放在数据库里且应用有多个实例,单个进程里的 Java 锁不能覆盖全部竞争者,更新条件和事务边界也必须设计好。
索引与事务分别展开
索引帮助定位记录,也会占空间并增加写入维护成本。可以拿项目中的一条 SQL 说明过滤、排序和回表过程,而不只是背 B+ 树。
事务则把相关操作组织成一个提交或回滚的单位。隔离级别决定并发访问的可见性与锁行为;事务不宜夹入长时间外部调用,否则连接和锁都可能被占住。
原帖记录了一面当场通过并约二面。反问涉及面试评价和部门使用 AI 的情况,没有给出具体回答内容。