金山云java开发一面面经

  1. CAS和原子类的AutomicInterger
  2. 实践中如何优化 MySQL:SQL 语句及索引的优化、数据库表结构的优化、系统配置的优化、硬件的优化
  3. 索引的作用?和它的优点缺点是什么?
  4. POST和GET有什么区别?
  5. HashMap 如果一直 put 元素会怎么样?hashcode 全都相同如何?equals 方法都相同如何?
  6. Spring的Controller是单例的吗?多线程情况下Controller是线程安全吗?
  7. Zookeeper在yarn框架中如何实现避免脑裂的?
  8. 线程的状态
  9. 分库分表和读写分离如何设计
  10. string几种拼接方式区别,+和append底层有没有区别
  11. 还问了对图像一些基础知识的了解(jpeg、png等格式压缩方式区别)
  12. linux中怎么查看系统资源占用情况
  13. 请说一下zookeeper中leader的选举算法,即fastleaderelection算法
  14. lamda表达式....
  15. 除了垃圾回收,还有那些工作会造成CPU负载过高(其实这里给出的是一个场景,就是让描述一下除了垃圾回收之外,还有那些工作会让线上CPU占用到百分之90-100,并且给出排查过程)。
  16. 服务器模型以及之间的区别
  17. MySQL索引的实现,innodb的索引,b+树索引是怎么实现的,为什么用b+树做索引节点,一个节点存了多少数据,怎么规定大小,与磁盘页对应。
  18. 既然线程会共享进程的程序和数据,那么如何保证各个线程之间互不干扰相互独立呢
  19. 对一个用户的帖子按照发帖时间进行存储,该使用哪种redis类型
  20. Linux环境下,如何更改文件名同时将它移到其它指定目录?
  21. 分布式锁,redis缓存,spring aop,系统架构图,MySQL的特性
  22. Redis的持久化?有哪些方式,原理是什么?