growingIO面经
楼主下午去面了growingIO,刚出门就开门红,把地铁坐反了【嗷呜一声就哭了】,原本是给本身留了点时间喘口气,结果赶忙赶路到公司。面试
一面
- 自我介绍
- 项目的架构
- 讲讲redis的list吧
- redis的淘汰策列
- redis的list作消息队列有什么缺点
- redis有没有多个消费者订阅生产者的方式
- 这个方式有什么缺点
- 缓存雪崩的解决方案
- 缓存击穿和缓存穿透
- 有没有作过SQL优化,怎么作的
- 复合索引ABC,在什么场景下会用到
- 说说HashMap吧
- HashMap的扩容
- HashMap安全吗?为何不安全
- ConcurrentHashMap怎么保证线程安全的
- 用过什么线程池,怎么用的。
- 线程池的几种建立方式,线程池的参数
- 线程池的拒绝策略
- 垃圾回收机制
- 手写二分查找
- 1+3+3²+3³+···+3n次方
一面彷佛就问了这些问题吧。具体我也忘了。redis
二面
- 自我介绍
- 项目
- redis用过哪些数据结构
- synchronized可重入是怎么实现的
- 如何本身实现一个可重入锁
- 线程池的线程复用怎么实现的
- JDK自带线程池的使用场景
- synchronized的锁静态方法和锁普通方法的区别
- synchronized锁静态方法和普通方法后,会产生同步阻塞嘛?
- JVM的垃圾回收机制
- GC ROOT
- JVM怎么去回收的垃圾
- 若是线程建立的过多会出现什么问题
- 切换上下文的资源是什么资源
- CAS与同步锁使用场景
- CAS是怎么样的,有什么缺点
- CAS耗费的资源是什么资源
- 同步锁为何在写多读少的条件下比CAS好
- 为何说同步锁比CAS省资源,省的是什么资源
- 线程处在Block状态下会消耗资源嘛?
- jstack用过吗?他里面有几种线程状态
- wait与sleep的区别
从下午3点开始到下午5:30结束,一面一个半小时,二面一个小时。二面面试官给我说的最多的话就是,你肯定吗?要再也不想一想? 心里OS:@&!#@!&!@¥@!¥!@ 最后说我有点不自信,质问了一下就有些不肯定了,感受是猜的。心里OS :!@@!)
@!
!@#$!@)缓存