写给 Java 软件工程师的 3 条建议,百度笔试题百度校招面试经验,开源新作
02 JVM
线程
JVM 内存区域
JVM 运行时内存
垃圾回收与算法
JAVA 四种引用类型
GC 分代收集算法 VS 分区收集算法
GC 垃圾收集器
JAVA IO/NIO
JVM 类加载器
03 JAVA 集合
接口继承关系和实现
LIST
SET
MAP
04 JAVA 多线程并发
JAVA 并发知识库
JAVA 线程实现/创建方式
4 种线程池
线程生命周期(状态)
终止线程 4 种方式
sleep 与 wait 区别
start 与 run 区别
JAVA 后台线程
JAVA 锁
线程基本方法
线程上下文切换
同步锁与死锁
线程池原理
JAVA 阻塞队列原理
CyclicBarrier、CountDownLatch、Semaphore 的方法
voliate 关键字的作用(变量可见性、禁止重排序)
如何在两个线程之间共享数据
Threadlocal 作用(线程本地存储)
synchronized 和 ReentrantLock 的区别
ConcurrentHashMap 并发
Java 中用到的线程调度
进程调度算法
什么是 CAS(比较并交换-乐观锁机制-锁自旋)
什么是 AQS(抽象的队列同步器)
05 JAVA 基础
JAVA 异常分类及处理
JAVA 反射
JAVA 注解
JAVA 内部类
JAVA 泛型
JAVA 序列化(创建可复用的 Java 对象)
JAVA 复制
06 Spring 原理
Spring 特点
Spring 核心组件
Spring 常用模块
Spring 主要包
Spring 常用注解
Spring 第三方结合
Spring IOC 原理
Spring APO 原理
Spring MVC 原理
Spring Boot 原理
JPA 原理
Mybatis 缓存
Tomcat 架构
07 微服务
服务注册发现
API 网关
配置中心
事件调度(kafka)
服务跟踪(starter-sleuth)
服务熔断(Hystrix)
API 管理
08 Netty 与 RPC
Netty 原理
Netty 高性能
Netty RPC 实现
RMI 实现方式
Protocol Buffer
Thrift
09 网络
网络 7 层架构
TCP/IP 原理
TCP 三次握手/四次挥手
HTTP 原理
CDN 原理
10 日志
Slf4j
Log4j
logBack
ELK
11 Zookeeper
Zookeeper 概念
Zookeeper 角色
Zookeeper 工作原理(原子广播)
Zonde 有四种形式的目录节点
12 Kafka
Kafka 概念
Kafka 数据存储设计
生产者设计
消费者设计
13 RabbitMQ
概念
RabbitMQ 架构
Exchange 类型
14 Hbase
概念
列式存储
Hbase 核心概念
Hbase 核心架构
Hbase 的写逻辑
Hbase VS Cassandra
15 MongoDB
概念
特点
16 Cassandra
概念
数据模型
Cassandra 一致 hash 和虚拟节点
Gossip 协议
数据复制
数据写请求和协调者
数据读请求和后台修复
数据存储(Commitlog、MemTable、SSTable)
二级索引
数据读写
17 设计模式
设计原则
工厂方法模式
抽象工厂模式
单例模式
建造者模式
原型模式
适配器模式
装饰器模式
代理模式
外观模式
桥接模式
组合模式
享元模式
策略模式
模板方法模式
观察者模式
迭代子模式
责任链模式
命令模式
备忘录模式
状态模式
访问者模式
中介者模式
解释器模式
18 负载均衡
四层负载均衡 VS 七层负载均衡
负载均衡算法/策略
LVS
Keepalive
Nginx 反向代理负载均衡
HAProxy
19 数据库
存储引擎
索引
数据库三范式
数据库事务
存储过程(特定 SQL 语句集)
触发器
数据库并发策略
数据库锁
基于 Redis 分布式锁
分区分表
两阶段提交协议
三阶段提交协议
柔性事务
CPA
20 一致性哈希
Paxos
Zab
Raft
NWR
Gossip
一致性 hash
21 JAVA 算法
二分查找
冒泡排序算法
插入排序算法
快速排序算法
希尔排序算法
归并排序算法
桶排序算法
基数排序算法
剪枝算法
回溯算法
最短路径算法
最大子数组算法
最长公共子序算法
最小生成树算法
22 数据结构
栈
队列
链表
散列表
排序二叉树
红黑树
B-Tree
位图
23 加密算法
AES
RSA
CRC
MD5
24 分布式缓存
缓存雪崩
缓存穿透
缓存预热
缓存更新
缓存降级
25 Hadoop
概念
HDFS
MapReduce
Hadoop MaReduce 作业的生命周期
26 Spark
概念
核心架构
核心组件
SPARK 编程模型
SPARK 计算模型
SPARK 运行流程
SPARK RDD
SPARK RDD 流程
27 Storm
概念
集群架构
编程模型
Toplogy 运行
Strom Streaming Grouping
28 YARN
概念
ResourceMananger
NodeMananger
ApplicationMaster
YARN 运行流程
29 机器学习
决策树
随机森林算法
逻辑回归
SVM
朴素贝叶斯
K 最近邻算法
K 均值算法
Adaboost 算法
神经网络
马尔可夫
30 云计算
SaaS
PaaS
IaaS
Docker
OpenStack
Java 面试核心知识点笔记
其中囊括了 JVM、锁、并发、Java 反射、Spring 原理、微服务、Zookeeper、数据库、数据结构等大量知识点。
Java 中高级面试高频考点整理
最后分享 Java 进阶学习及面试必备的视频教学
评论