搜狗java工程师现场面经

  1. 介绍spring的IOC和AOP,分别如何实现(classloader、动态代理)
  2. MySQL的索引,为什么是B+而不是平衡二叉树
  3. 创建线程安全的单例有那些实现方法?
  4. 流排序和计数排序
  5. 如何查看服务器负载?
  6. 设计一个短链接生成系统?数据如何存储?高并发如何处理?
  7. 让你自己来实现一个带权重的轮询负载均衡,能说说你的思路或者写个伪代码也行。(放弃治疗了,我太菜了)
  8. Volatile 关键字,指令重排序有什么意义?
  9. 如何实现一个lru
  10. zookeeper的某个机器挂了,整个集群如何处理
  11. 如果建立一张微博表,该如何建立,主键使用什么类型,微博内容使用什么类型,如何存放表情?如何快速找到一个用户在某个时间段发出的微博?
  12. 研究过mysql底层吗? 我:研究过一点 索引是什么结构? 我:b+树 B+树分页?(还是一页的容量?完全不知道) 我:。。。 引擎有什么? 我:innodb和myisam 说一下区别和适用场景? 我:innodb支持事务,外键,只锁一行,适合高并发。。。
  13. 说下单例懒汉式和饿汉式的区别?
  14. 高并发量大的话怎么处理热点,数据等
  15. spring何时创建applicationContext
  16. 一个×××数组,给定一个数,在数组中找出两个数的和等于这个数,并打印出来,我写的时间复杂度高,要求O(n)。
  17. CAS和原子类的AutomicInterger
  18. springboot 依赖注入的方式
  19. 写一段脚本实现将nginx的access.log日志中ip按访问量排行
  20. string几种拼接方式区别,+和append底层有没有区别
  21. 如何同步远程服务器上的指定目录到本地服务器?
  22. 那知道跳表吗,跳表有哪些应用吗? 跳表是巴拉巴拉,但是应用没有去了解过哦 刚刚查了下 在redis当中有用到....果然框架这块还得好好补补