小米java二面

  1. 说一说计算机网络的七层结构
  2. ThreadLocal 的结构?
  3. Redis连接时的connect与pconnect的区别
  4. 数据库死锁碰见过吗?是怎么解决的了?如何避免数据库死锁?
  5. 集群和负载均衡的算法与实现?
  6. ping一个服务器ping不通,用哪个命令跟踪路由包?
  7. Redis如何批量删除多个key?通过一个命令
  8. 用户不登录,怎么直接加入购物车的?
  9. 乐观锁的了解,比如AtomicInteger?答:自增典型的实现了乐观锁,原理为CAS自旋,具体说了说CAS如何自旋-
  10. 高并发场景下如何防止死锁,保证数据的一致性?
  11. Netty 的优势在哪?有什么问题吗?
  12. 数据库中存储密码是怎么存的(MD5加密),还知道其他加密方式吗
  13. 系统设计题:一个推送场景,50条内容,定时推送,先推5%用户,一段时间后再找出效果最好的几条,推给所有用户。设计相关库表,系统模块,需要可以落地,有伪代码
  14. 讲一下HDFS是如何容错,存储信息的,如果用户想hdfs写入数据,请讲一下整个写入的过程。重要???????
  15. 项目中用的啥JVM收集器,内存回收的机制,新生代老年代的两种算法,两种算法各有啥缺点,有没有搞过JVM调优(调优完全不会)
  16. 除了垃圾回收,还有那些工作会造成CPU负载过高(其实这里给出的是一个场景,就是让描述一下除了垃圾回收之外,还有那些工作会让线上CPU占用到百分之90-100,并且给出排查过程)。
  17. linux的内存分配和多线程原理
  18. 说说阻塞队列
  19. maven熟吗,如果遇到版本不匹配的问题怎么解决