最近一个哥们去面试某当红大厂了,其中几个他印象深刻的面试题你们品品:
1、介绍下如何对MySQL SQL语句进行分析和优化?
2、Redis 怎样实现的分布式锁?
3、如何实现本地缓存和分布式缓存?
4、说一下 JVM 的内存布局和运行原理?
5、RocketMQ 是怎么存储消息的?源码中有哪些高可用、高性能的设计?
面试官不愧是大佬,一层接一层的问过来,问完**“Redis 怎样实现的分布式锁”又问“单机锁有哪些?它为什么不能在分布式环境下使用?”**
由于平时只是改改以前的框架代码,哥们当场懵逼!面完瞬间觉得自己的技术弱爆了!结果当然是挂!
1. 二叉搜索树和平衡二叉树有什么关系,强平衡二叉树(AVL 树)和弱平衡二叉树
2. B 树和 B+树的区别,为什么 MySQL 要使用 B+树
3. HashMap 如何解决 Hash 冲突
4. epoll 和 poll 的区别,及其应用场景
5. 简述线程池原理,FixedThreadPool 用的阻塞队列是什么?
6. sychronized 和 ReentrantLock 的区别
7. sychronized 的自旋锁、偏向锁、轻量级锁、重量级锁,分别介绍和联系
8. HTTP 有哪些问题,加密算法有哪些,针对不同加密方式可能产生的问题,及其
1. 设计模式有哪些大类,及熟悉其中哪些设计模式
2. volatile 关键字,他是如何保证可见性,有序性
3. Java 的内存结构,堆分为哪几部分,默认年龄多大进入老年代
4. ConcurrentHashMap 如何保证线程安全,jdk1.8 有什么变化
5. 为什么 ConcurrentHashMap 底层为什么要红黑树
6. 如何做的 MySQL 优化
7. 讲一下 oom 以及遇到这种情况怎么处理的,是否使用过日志分析工具
1. 项目介绍
2. 你们怎么保证 Redis 缓存和数据库的数据一致性?
3. Redis 缓存雪崩?击穿?穿透?
4. 你熟悉哪些消息中间件,有做过性能比较?
关于面试面试我还通过一些渠道整理了需要大厂真实面试主要有:蚂蚁金服、拼多多、阿里云、百度、唯品会、携程、丰巢科技、乐信、软通动力、OPPO、银盛支付、中国平安等初,中级,高级Java面试题集合,附带超详细答案,希望能帮助到大家。
虽然面试套路众多,但对于技术面试来说,主要还是考察一个人的技术能力和沟通能力。不同类型的面试官根据自身的理解问的问题也不尽相同,没有规律可循。
上面提到的关于这些JAVA基础、三大框架、项目经验、并发编程、JVM及调优、网络、设计模式、spring+mybatis源码解读、Mysql调优、分布式监控、消息队列、分布式存储等等面试题笔记及资料都是免费分享的,有需要学习的小伙伴可以直接点点点点点这里免费下载
试题笔记及资料都是免费分享的,有需要学习的小伙伴可以直接点点点点点这里免费下载**
有些面试官喜欢问自己擅长的问题,比如在实际编程中遇到的或者他自己一直在琢磨的这方面的问题,还有些面试官,尤其是大厂的比如 BAT 的面试官喜欢问面试者认为自己擅长的,然后通过提问的方式深挖细节,刨根到底。