【面试题】面试题 问题之书
一、Java基础
集合
- HashMap 1.7和1.8的区别 源码阅读jdk1.8
- ConcurrentHashMap的实现原理以及1.7和1.8的区别
- Java提供的排序算法是怎么实现的?
Object
- 序列化和反序列化底层的实现原理等相关问题
- new String()一共创建了几个对象?
- Java Integer和String内存存储常见问题
- hashCode和equals相关面试题
- JNI调用
- java NIO / IO
- 反射 反射机制
- 动态代理
二、多线程
Synchronized
- 线程安全和锁Synchronized概念相关面试题
- 可重入锁以及Synchronized的其他基本特性
- 从volatile和Synchronized线程间通信机制的介绍与使用
锁
- 使用Lock对象实现同步以及线程间通信
- Java中的队列同步器AQS和ReentrantLock锁原理简要分析
- 关于锁优化的几点建议
- 无锁CAS操作以及Java中Atomic并发包的“18罗汉”(十多个原子类)
- 读写锁ReentrantReadWriteLock深入分析
- 等待/通知模式接口Condition接口深入分析
ThreadLocal
-
线程本地ThreadLocal的介绍与使用,如何自己实现一个ThreadLocal,多图深入分析ThreadLocal原理
- ThreadLocal造成OOM内存溢出案例演示与原理分析
- 借ThreadLocal出现OOM内存溢出问题再谈弱引用WeakReference
线程池
-
使用线程池实现线程的复用和一些坑的避免
-
Executor框架相关面试知识点
-
多线程异步调用之Future模式等相关技术问题
工具
-
两种常用的线程计数器CountDownLatch和循环屏障CyclicBarrier CountDownLatch应用
三、JVM相关
- JVM体系结构
- 启动
/Library/Java/JavaVirtualMachines/jdk1.8.0_201.jdk/Contents/Home/jre/lib/server/libjvm.dylib动态连接库
- 类加载
-
内存管理
-
执行引擎的及时编译
-
垃圾回收机制
四、Tomcat相关
- Tomcat
五、MySQL
基础
- MySQL必知必会知识点总结
存储引擎
- 简述在MySQL数据库中MyISAM和InnoDB存储引擎的区别?
索引
- MySQL数据库索引的分类及优化方式,失效条件,底层实现 B树、B+树
- 为什么你创建的数据库索引没有生效,索引失效的条件!
-
sql优化
隔离级别
- 各个级别依次解决的问题(脏读、不可重复读、幻读)
- 默认级别,存在怎样的问题,这样的问题如何解决(锁)
锁
- 分类:行锁,表锁,页级锁,意向锁,读锁,写锁,悲观锁,乐观锁,
- 加锁的select sql方式和场景(为什么需要加锁)
- 加锁后果:死锁
事务
- ACID 原子性 一致性 隔离性(隔离级别) 持久性
- 为什么用spring @Transactional事务没有生效 原因1存储引擎
分库分表
5.3、数据库分库分表策略相关面试题
六、SSM框架
七、Redis相关
- Redis简介以及和其他缓存数据库的区别;
- Redis常见的5种不同的数据类型等相关面试题,
- Redis为什么这么快以及Redis为什么是单线程等相关面试题,
- Redis持久化相关面试题,
- 缓存降级等相关面试题,
- Redis一致性Hash算法相关面试题,
- 基于Redis实现分布式锁setnx和set的实现以及setnx造成死锁的问题!
八、Dubbo
8.1、Dubbo框架的RPC调用流程图(PS:重点内容)dubbo原理
8.2、 RPC框架的实现原理,及RPC架构组件相关面试题,
8.3、基于TCP和HTTP协议的RPC简单实现,可以在面试官面前吹牛了,自己也实现过简单的RPC!
九、分布式
- 分布式之数据库和缓存双写一致性方案解析!
- 大型网站应用之海量数据和高并发解决方案总结一二,
- 为什么CAP理论只能同时满足两个?BASE理论
- 分布式锁简单入门以及三种实现方式介绍及其优缺点对比!
基于Redis、数据库和Zookeeper实现分布式锁
- 基于Redis实现分布式锁setnx和set的实现以及setnx造成死锁的问题,加分题!
十、Zookeeper相关
- ZooKeeper基本原理等相关面试题
- ZooKeeper一致性协议 ZAB 原理、原子广播协议、崩溃恢复协议等
- 面试必备Zookeeper选举机制深入理解
- 为什么在Zookeeper中Server 数目一般为奇数?
十一、设计模式
- 单例模式几种写法的错与对以及常见的面试题
十二、Nginx
- 什么是正向代理和反向代理?
- C10K相关以及什么是C10M!
- Nginx基础概念相关面试题,
- Nginx+Tomcat搭建负载均衡,
- 请求的执行流程相关面试题!
十三、消息队列
- kafka相关概念 kafka入门
十四、搜索引擎
十五、Linux相关面试题
十六、场景设计
- 如何将一个长URL转换为一个短URL?(PS:这个是高频面试题)
- 原理是什么以及如何实现,如何使用雪花算法将长地址转换为短地址?
十七、大数据量场景设计相关面试题
面试题积累不断更新.......