那些年,为了进大厂准备的面试题

持续更新中,可关注

  • 一、基础篇
    • 1、网络基础
      • 1.1 TCP
        • TCP、IP模型
        • TCP 重传、滑动窗口、流量控制、拥塞控制
        • TCP粘包原因与解决方法
        • 三次握手、四次挥手
      • 1.2 HTTP
        • HTTP1.0和HTTP2.0
        • HTTP与HTTPS
        • GET与POST
        • HTTP常见响应码
        • 重定向与转发
        • cookie与session
        • 一次完整的浏览器请求过程
    • 2、操作系统基础
      • 2.1 进程和线程
        • 进程间的通信方式
        • 用户态和核心态
        • 操作系统的进程空间
      • 2.2 操作系统内存管理
        • FIFO
    • 3、java基础
      • 3.1 面向对象基础特性
        • 多态
        • static与final关键字
        • 抽象类与接口
        • 泛型
        • 反射
        • 序列化与反序列化
        • JAVA异常体制
        • 重载与重写
      • 3.2 数据结构与算法
        • ArrayList与LinkedList
        • 排序算法
        • 数组
      • 3.3 设计模式
        • 单例
        • 工厂
        • 懒加载
  • 二、JVM篇
    • 1、JVM内存划分
      • 栈、堆
      • 对象引用
      • jvm对象从创建到销毁的过程
    • JVM类加载过程
      • 双亲委派机制
      • 类加载机制
    • 2、JVM垃圾回收
      • 2.1 对象已死吗?
        • GCroot
        • 引用计数法
        • 可达性分析算法
        • 生存还是死亡
        • 回收方法区
      • 2.2 垃圾回收算法
        • 标记 - 清除算法
        • 复制算法
        • 标记 - 整理算法
        • 分代回收算法
      • 2.3 垃圾收集器
        • G1
      • 2.4 JVM性能调优
  • 三、多线程篇
    • 1、线程调度
      • 线程状态
      • wait与sleep
      • 阻塞唤醒过程
    • 2、线程池
      • 线程拒绝策略
      • 线程池大小设置
    • 3、线程安全
      • 乐观锁、CAS思想
      • 死锁
      • synchronized底层实现
      • 公平锁与非公平锁
      • ThreadLocal原理
      • String不可变原因
    • 4、内存模型
      • volatile底层实现
  • 四、MYSQL篇
    • 1、MYSQL搜索引擎
      • Innodb
      • MyIsam
    • 2、事务
      • 事务四大特性
      • 事务隔离级别
      • MVCC
      • 行锁、表锁
      • 间隙锁
    • 3、索引
      • 联合索引
      • 聚簇索引与非聚簇索引
      • 唯一索引
      • 哈希索引
      • B+树索引
      • 最左前缀
      • 索引下推
      • 隐式转换
    • 4、SQL
      • sql执行过程
      • 回表查询和索引覆盖
      • explain及优化
      • join
      • sql调优
    • 5、集群
      • 主从复制
      • 数据一致性
      • 集群架构
      • 故障转移和恢复
      • 分表分库
      • 如何生成自增主键id
      • 数据与缓存一致性
    • 6、日志
      • redolog
      • undolog
  • 五、redis
    • 1、redis底层
      • 1.1 API
      • 底层实现
      • 数据结构
        • 简单动态字符串
        • 链表
        • 字典
        • 跳跃表
      • redis持久化
      • 1.2 事务
      • 读写模式
    • 2、redis相关
      • 缓存雪崩
      • 缓存击穿
      • 缓存穿透
      • 热点key
    • 3、redis集群
      • redis数据分区
      • 哨兵模式
      • 集群模式
      • 主从模式
      • 分布式锁
      • 心跳检测
  • 六、Spring
    • 1、设计思想
      • IOC控制反转
      • AOP切面
      • bean生命周期
    • 2、spring注解
  • 七、SpringCloud篇
  • 八、分布式篇
    • 1、CAP
    • 2、一致性
    • 3、可用性
      • 心跳检测
    • 4、分布式一致性算法
  • 九、消息中间件
    • 1、消息队列
    • 2、适应场景
  • 十、架构
  • 十一、前端

持续更新中,可关注wx 公众号 程序猿夏夏夏子

一、基础篇

1、网络基础

1.1 TCP

TCP、IP模型
TCP 重传、滑动窗口、流量控制、拥塞控制
TCP粘包原因与解决方法
三次握手、四次挥手

1.2 HTTP

HTTP1.0和HTTP2.0
HTTP与HTTPS
GET与POST
HTTP常见响应码
重定向与转发
cookie与session
一次完整的浏览器请求过程

2、操作系统基础

2.1 进程和线程

进程间的通信方式
用户态和核心态
操作系统的进程空间

2.2 操作系统内存管理

FIFO

3、java基础

3.1 面向对象基础特性

多态
static与final关键字
抽象类与接口
泛型
反射
序列化与反序列化
JAVA异常体制
重载与重写

3.2 数据结构与算法

ArrayList与LinkedList
排序算法
数组

3.3 设计模式

单例
工厂
懒加载

二、JVM篇

1、JVM内存划分

栈、堆

对象引用

jvm对象从创建到销毁的过程

JVM类加载过程

双亲委派机制

类加载机制

2、JVM垃圾回收

2.1 对象已死吗?

GCroot
引用计数法
可达性分析算法
生存还是死亡
回收方法区

2.2 垃圾回收算法

标记 - 清除算法
复制算法
标记 - 整理算法
分代回收算法

2.3 垃圾收集器

G1

2.4 JVM性能调优

三、多线程篇

1、线程调度

线程状态

wait与sleep

阻塞唤醒过程

2、线程池

线程拒绝策略

线程池大小设置

3、线程安全

乐观锁、CAS思想

死锁

synchronized底层实现

公平锁与非公平锁

ThreadLocal原理

String不可变原因

4、内存模型

volatile底层实现

四、MYSQL篇

1、MYSQL搜索引擎

Innodb

MyIsam

2、事务

事务四大特性

事务隔离级别

MVCC

行锁、表锁

间隙锁

3、索引

联合索引

聚簇索引与非聚簇索引

唯一索引

哈希索引

B+树索引

最左前缀

索引下推

隐式转换

4、SQL

sql执行过程

回表查询和索引覆盖

explain及优化

join

sql调优

5、集群

主从复制

数据一致性

集群架构

故障转移和恢复

分表分库

如何生成自增主键id

数据与缓存一致性

6、日志

redolog

undolog

五、redis

1、redis底层

1.1 API

底层实现

数据结构

简单动态字符串
链表
字典
跳跃表

redis持久化

1.2 事务

读写模式

2、redis相关

缓存雪崩

缓存击穿

缓存穿透

热点key

3、redis集群

redis数据分区

哨兵模式

集群模式

主从模式

分布式锁

心跳检测

六、Spring

1、设计思想

IOC控制反转

AOP切面

bean生命周期

2、spring注解

七、SpringCloud篇

八、分布式篇

1、CAP

2、一致性

3、可用性

心跳检测

4、分布式一致性算法

九、消息中间件

1、消息队列

2、适应场景

十、架构

十一、前端

你可能感兴趣的:(学习路线,java,数据结构,算法,sql,mysql,spring,http)