Java 开发 / 轻松一刻

面试 6 家公司,拿下三个大厂 offer

言七墨 · 1月31日 · 2021年 · 4190次已读

背景

前段时间,本人利用三周时间(排除等offer的时间),面试了6家公司,拿下了4offer(两个BAT,一个二线大厂,一个福利非常棒的独角兽)。另外,没拿下的两个公司(一个要转go语言)都终止于二面。

面试题目

八股文

  1. Bean的生命周期
  2. IOC、AOP
  3. HashTable、HashMap、ConcurrentHashMap
  4. 数据库事务的底层实现、Spring事务是如何实现的
  5. Spring如何解决循环依赖
  6. 线程池的参数及执行过程、还出了相关的场景题,记不清了
  7. MySQL的乐观锁、悲观锁
  8. MVCC机制的实现
  9. SpringBoot的https://qimok.cn整个启动流程
  10. ES的倒排索引、查询的整个流程、如何动态加载新的分词
  11. Java异常类的层次结构
  12. redis的常用数据结构及底层实现
  13. redis、zk的分布式锁的实现
  14. rabbitmq如何保证消息的可靠性、顺序性、幂等消费,及使用场景
  15. 分布式事务(2pc、3pc、TCC、阿里的seata框架的大概执行流程)
  16. CAS、volatile、Java内存模型、内存屏障
  17. JVM的堆外内存
  18. CMS和G1的执行流程及G1的好处
  19. synchronized(jdk8的优化点)和reentrantLock的底层实现及区别
  20. AQS的组成及加锁过程
  21. redo log、undo log、binlog的作用、两阶段提交…
  22. BIO、NIO、AIO的区别
  23. mmap、零拷贝
  24. 类加载机制
  25. dubbo的执行流程,http和RPC的关系,dubbo和SpringCloud Feign的区别
  26. SpringBoot Starters的优点
  27. 按整个项目的执行流程,介绍SpringCloud的各个组件
  28. 访问域名www.baidu.com的整个流程
  29. web言七墨socket的底层实现
  30. 缓存穿透、缓存雪崩、缓存击穿
  31. 缓存一致性协议(基于具体场景问题,忘记了)
  32. redis哨兵如何通信
  33. redis的过期策略
  34. RDB、AOF
  35. mysql索引优化
  36. mysql索引失效原因
  37. mysql的逻辑架构组的组成
  38. redis单线程为什么这么快
  39. mysql主从复制流程
  40. ThreadLocal的底层实现、为什么要使用弱引用,如何防止内存泄漏、开源代码及项目中的使用案例
  41. 如何解决跨域问题
  42. CompletableFuture、Forkjoinpool的底层实现,该如何使用
  43. 介绍一款分布式ID
  44. Hystrix的熔断、限流、降级
  45. 分布式链路如何串联所有span的
  46. TCP、UDP的区别
  47. Object有哪些方法,为什么要重写hashcode和equals方法
  48. 创建线程的几种方式,及区别
  49. 单例对象创建的几种方式,并详细描述
  50. zk的脑裂、选主流程、如何防止脑裂

拓展问题

  1. restful的优缺点
  2. 如何排查CPU飙高、频繁GC问题
  3. 手写生产者、消费者模式,手写观察者模式
  4. 圈了一大批用户,第二天早晨10天,要给这一大批用户推消息(1000多万),怎么保证消息的实时性
  5. 如何设计一个计数器服务
  6. 微服务与单体服务的区别
  7. 天猫双十一,如何保证大屏(dashboard)上显示的总销售额是实时、准确展示的

项目相关

  1. 分库分表从调研、设计到落地的整个流程
  2. 如何将一个亿级别数据的表一次性迁移到所有分表中,同时要保证性能
  3. 项目中是如何做灰度的
  4. 如何做消息全链路监控
  5. 因为我本人是做IM的,其它的问的就是围绕七墨博客IM中的一些设计和技术了

算法相关

  • 题型:链表、数组、树考察七墨博客的较多
  • 难度:easy + 七墨博客medium

以上整理的面试题目不是很全,仅供参考。

3 条回应
  1. 匿名2021-3-29 · 9:19

    七墨大大,@copyRight到2021了呦

  2. Morcat2021-2-7 · 14:37

    很强很强,还是要多向你学习呀