27届亚信Java实习
- 时间
- 2026-08
- 来源
- 牛客网
《面试题目》
- 自我介绍对 MySQL 事务了解多少?事务的隔离级别有哪些?对 Java 的垃圾回收机制了解多少?List、Set、Map 的区别?HashMap、LinkedHashMap 的区别?@PostMapping 有什么用?@RequestBody 有什么用?MyBatis-Plus 的链式查询包装器怎么使用?ArrayList一般怎么使用?线程池的核心参数有哪些?对 ES 了解多少?什么是文档?对 Nacos 了解多少?在项目中怎么使用?缓存击穿和缓存雪崩的区别以及分别的应对方法?Linux 查日志结尾、实时输出的命令是什么?Linux 移动文件的命令是什么?Linux 复制文件的命令是什么?你的项目中说空间检索优化,具体是怎么做的?(Redis Geo 数据结构做空间检索)你的项目中具体怎么解决缓存击穿和缓存雪崩的问题?用过哪些 AI?一般怎么使用?接受加班吗?
《参考解析》
- Redis常用于缓存、分布式锁和计数。缓存与数据库更新通常采用“先写数据库、再删除缓存”,并通过重试、延时双删或消息补偿处理删除失败。
- MySQL索引通常使用B+树,叶子节点按顺序连接,适合范围查询;设计索引时结合选择性、最左匹配原则和执行计划,避免无效索引与回表开销。
- 并发问题应先明确共享状态和一致性边界,再选择锁、CAS或队列。线程池需要根据任务是CPU密集还是IO密集设置核心线程数、队列容量和拒绝策略,并监控活跃数与队列长度。