用友-Java岗位 一面、二面(已意向)
2022-8.3 一面(30 min)
主要围绕项目和八股
回忆,可能有遗漏。。
- 项目中哪里使用到了redis、kafka
- Mysql的聚簇索引和非聚簇索引
- 项目中有没有SQL语句执行很慢的情况,慢SQL(整懵了,最后撤到索引失效相关的知识了..)
- redis为什么是单线程的
- redis的数据结构有哪些
- redis怎么实现和mysql数据同步
- 了解缓存穿透吗,怎么解决
- 创建线程的方式
- 线程池工作原理
- 描述JVM内存模型
- 垃圾回收相关
- 自己的优势是什么,缺点是什么
- ..
小结:总的来说都是八股比较基础
2022-8.10 二面(40 min)
- 项目中你觉得哪些设计是做的比较好的?
- 你的二级缓存怎么实现和MySQL的一致性?(回答了异步监听binlog + 删除重试,面试官说还可以引入版本号的方式)
- 异步监听binlog + 删除重试中,监听的是主服务器的binlog还是从服务器的binglog?
- 本地缓存怎能实现和MySQL的一致性?
- 缓存穿透、缓存雪崩和解决方法
- 项目中给哪些key设置了过期时间
- MySQL怎么实现乐观锁和悲观锁
- 乐观锁有什么实现方式
- spring boot 的 starter 的原理是啥,怎么实现的
- 数据库的优化怎么做(答了索引优化和查询优化)
- 索引什么情况会失效
- 了解设计模式吗?说一下工厂设计模式怎么实现的
- java中实现锁的方式有哪些(回答了synchronized 、reentranlock和信号量)
- 怎么避免死锁现象的发生?在代码层面怎么避免(不会哈哈,面试官说可以用排序的方式,学习了)
- 一般遇到问题你是怎么解决的?
- 遇到过什么印象比较深刻的问题,怎么解决的?
- 你怎么上手一个新的知识?
- 反问
- 最后面试官给我详细介绍了一下他们部门的现状、技术栈等等
小结:自我感觉发挥的不是特别好,几个问题答得不是很好,但好在面试官很耐心,引导我,真的很nice!
---一二面小结---
用友的两次面试体验还是很好的,面试官很有耐心,沟通下来感觉很舒服(北方口音听起来也很舒服hh)~
2022-8.22
已意向