阶段一:Java 核心提高阶段

1、Java集合

  • Java 集合体系框架及概念了解
  • 集合底层数据结构
  • 数组
  • 链表
  • hash 表
  • 集合核心类源码剖析
  • ArrayList
  • LinkedList
  • HashMap
  • HashSet
  • TreeSet
  • JDK 7 和 8 对 HashMap 实现源码的对比
  • HashMap 面试热点剖析
  • [ ] 手写红黑树

    2、JVM 核心原理与调优

  • [ ] 深入 JVM 内存区域

  • Java 虚拟机历史背景发展
  • 运行时内存区域详解
  • 深入 JVM 堆、栈内存区域对象
  • 详解 JVM 堆栈参数设定
  • JDK 源码深入内存区域
  • JVM 执行子系统
  • Class 文件内容深入及本质剖析
  • 理解并掌握常见的字节码指令
  • 双亲委派的类加载机制深入分析
  • 基于方法调用,栈帧详解分析
  • JDK 源码深入指令
  • 垃圾回收机制剖析
  • 对象存活及生命周期、强弱虚引用在 Spring 框架中的应用
  • GC 常见算法、分带垃圾回收
  • GC 日志排查、内存泄漏和内存溢出透析
  • 内存分配和回收策略深入
  • JDK 源码深入 GC 机制
  • GC 在生产环境中的真实案例复盘

3、反射原理深入剖析与实践

  • 反射基础 API
  • Class 的操作
  • Filed 的操作
  • Method 的操作
  • Construction 操作
  • 反射性能分析
  • Java 源码分析
  • hotspot 源码分析
  • 反射安全性
  • 反射和单例
  • 反射实战-应用场景和总结
  • 反射在框架中的应用
  • 反射减少代码量应用

4、泛型原理深入剖析与实践

  • 在 API 设计时使用泛型的方式
  • 泛型类
  • 泛型接口
  • 泛型方法
  • 泛型擦除
  • javap 分析字节码
  • 桥接
  • 泛型的通配符
  • 无界
  • 上界
  • 下界
  • 使用实战
  • 字节码层级泛型的本质
  • javap
  • 举例对比

5、注解原理深入剖析与实践

  • 理解注解给 Java 带来的优雅之道
  • 理解注解的本质和原理
  • 理解注解定义和应用场景
  • 自定义注解
  • 预置注解
  • @Overrride 注解
  • @SupperssWarnings
  • @Deprecated
  • 元注解
  • @Target
  • @Retention
  • @Inherite
  • 注解和反射在框架中的实战
  • 使用反射和注解手写 lombok

专项突破

  • 自定义注解+ AOP 实现日志打印
  • 自定义注解实现过滤器
  • Arthas 线上 JVM 调优实战

阶段二、并发编程与网络通讯阶段

1、并发编程

  • CPU 和操作系统硬件模型
  • JMM 模型深度剖析
  • CAS 算法和 ABA 问题
  • 线程模型深度排序
  • 线程的生命周期
  • 多线程并发中的线程安全问题
  • Synchronized 原理分析
  • Volatile 原理分析
  • 多线程原子性、可见性、顺序性分析
  • 显示锁和 AQS 底层原理分析
  • AQS 共享锁实现原理
  • 并发容器深度剖析
  • CHM 原理
  • CAS 原子操作及相关类
  • 基本数据类型
  • AtomicInteget
  • AtomicLong
  • AtomicBoolean
  • 数组
  • AtomicIntegerArray
  • AtomicLongArray
  • AtomicReferenceArray
  • 引用类型
  • AtomicReference
  • J.U.C 并发编程工具掌握
  • J.U.C 中的 FutureTask 实战
  • JDK 中线程池工作机制
  • Fork / Join 原理剖析
  • 深入 ThreadLocal 底层原理及使用实战
  • 多线程在生产环境的实战案例

2、网络通讯模型

  • 网络编程深度剖析
  • TCP / IP 五层模型和 OSI 模型详解
  • 网络通讯协议 TCP 协议规范
  • TCP 三次握手和四次挥手机制
  • 操作系统内存空间划分
  • 同步和异步
  • 阻塞和非阻塞
  • Unix 五种 I/O 模型原理对比
  • 阻塞 I/O 模型
  • 非阻塞 I/O 模型
  • 多路复用 I/O 模型
  • 信号驱动 I/O 模型
  • 异步 I/O 模型
  • NIO 多路复用深入讲解
  • Java 网络模型编程
  • nio
  • bytebuffer
  • channel
  • selector
  • bio
  • aio

3、Netty 源码剖析

  • Netty 通讯框架总体架构设计
  • Netty 对比 JDK NIO 的优点
  • Reactor 线程模型详解
  • Netty 运行原理源码深度剖析
  • Netty 解决粘包、拆包原理分析
  • 零拷贝之用户态和内核态底层原理

专项突破

  • 手写 Tomcat
  • 手写线程池
  • Netty 版聊天室

阶段三:分布式数据存储系统架构与实战阶段

1、K / V 存储系统 - Redis

  • 深入 Redis 中间件总体架构
  • Redis 总体架构分析
  • Redis & NoSQL 讲解分析
  • NoSQL 特点总结分析
  • 互联网应用场景数据类型实战剖析
  • String 类型源码剖析
  • 数据结构分析
  • 存储结构分析
  • 应用场景分析
  • Hash 类型源码剖析
  • 数据结构分析
  • 存储结构分析
  • 应用场景分析
  • List 类型源码剖析
  • 数据结构分析
  • 存储结构分析
  • 应用场景分析
  • Set 类型源码婆媳
  • 数据结构分析
  • 存储结构分析
  • 应用场景分析
  • 其他类型使用分析
  • Redis 主从架构深度分析
  • 主从集群读写分离剖析
  • Sentinel 哨兵机制详解
  • 数据丢失问题深入分析
  • Redis 核心部分详解
  • 发布与订阅剖析
  • 内存回首策略剖析
  • 持久化机制对比
  • RDB
  • AOF
  • Redis 高性能原因分析
  • Redis 集群分片原理分析
  • 集群数据节点分布原理
  • 集群分片槽原理
  • 剖析 Redis 中间件请求调用流程
  • Redis 缓存击穿预防和解决方案
  • [ ] Redis 和 DB 数据同步案例

    2、MySQL 企业级海量数据存储与优化

  • [ ] MySQL 的架构模型

  • MySQL 底层实现原理
  • SQL 语句执行步骤
  • 深入 InnoDB 引起及详细分析其极大特性
  • Innodb 引擎分析
  • MyISAM 引擎分析
  • Memory 引擎分析
  • MySQL 事务的隔离级别及数据一致性原理深入剖析锁机制
  • 隔离性与锁机制分析
  • 锁类型详解
  • 粒度
  • 类型
  • 用法
  • 算法
  • MVCC 等高级特性主题
  • ACID 特性分析
  • 事务隔离级别详解
  • 数据库的索引 B+ 树原理
  • 索引的定义
  • 最左匹配原则
  • 联合索引
  • 覆盖索引
  • 回表与索引原理分析
  • B+ Tree 的数据结构演化过程
  • 二叉查找树详解
  • 平衡二叉树详解
  • B-Tree 树详解
  • B+Tree 结构详解
  • B+Tree 与存储引擎详解
  • MySQL 的优化实战
  • 数据库结构优化
  • 数据库表设计优化
  • Explan 执行计划剖析
  • MySQL 内存管理
  • 存储结构分析

3、高性能分布式文档存储 MongoDB

  • MongoDB 存储引擎实现原理
  • MongoDB 存储引擎实现原理
  • 业务层剖析
  • 写请求剖析
  • 一致性剖析
  • MongoDB 总体架构设计深度剖析
  • 数据库概念分析
  • 文档概念分析
  • 集合概念分析
  • 元数据概念分析
  • MongDB 调用请求生命周期
  • MongDB 关键性技术知识点原理剖析
  • 深入理解索引和查询优化
  • 数据稳定性分析
  • MongoDB 高可用集群大件
  • 主从复制模式
  • 主从复制原理
  • 主从搭建
  • 读写分离配置
  • 副本集集群
  • 副本集集群原理分析
  • 副本集集群搭建
  • 读写分离配置
  • 副本集与分片混合部署
  • 副本集与分片混合部署搭建
  • 部署讲解
  • 路由服务器配置
  • [ ] 关联切片和路由

    专项实战突破

  • [ ] 手写 Tomcat

  • 手写线程池
  • Netty 版聊天室

阶段四:Web 基础框架深入剖析与实战阶段

1、SSM 框架设计与实战 Spring

  • Spring 框架体系结构分析
  • Spring 框架总体架构设计
  • Spring 中 Bean 请求生命中期
  • Spring 关键技术原理剖析
  • 深入 Spring 框架配置知识
  • Spring 核心组件结构分析
  • Spring IOC 机制设计思想
  • Spring IOC 中 xml 版本源码解读
  • 重要接口的介绍
  • 加载 xml 转化为 BeanDefinition
  • Bean 实例化流程分析
  • Spring IOC 注解版本的源码解读
  • BeanDefinition 深度剖析
  • 深度剖析利用三级缓存解决缓存依赖问题
  • 手动实现 IOC 功能
  • Spring AOP 基础
  • AOP 相关术语
  • Spring AOP 体系结构
  • 切面分析
  • expose-proxy 的作用
  • proxy-target-class 作用
  • Spring AOP 源码剖析
  • 寻找入口方式
  • 根据注解寻找入口
  • 注入 AnnotationAware
  • AspectJAutoProxyCreator
  • BeanPostProcessor 接口实现方法
  • 获取增强器过程
  • 匹配获取代理对象
  • 创建代理类
  • 代理实例调用 invoke
  • 通过 BeanPostProcessor 原理实现一个网关
  • Spring 的事务源码
  • Spring MVC 原理
  • Spring MVC 重要组件
  • DispatcherServlet
  • HandlerAdapter
  • HandlerMapping
  • Handler
  • View resolver
  • View
  • Spring MVC 执行流程
  • Spring MVC 源码剖析
  • 初始化过程
  • 请求的调用过程
  • 验证处理业务和调用视图时机点
  • 获取执行链
  • 获取 Adapter
  • 逻辑处理
  • 页面处理
  • 手写 mini 版 Spring MVC

2、SSM 框架设计与实战 MyBatis

  • 传统 JDBC 对数据库的操作
  • MyBatis 框架总体架构设计思想深入
  • MyBatis 的架构
  • MyBatis 缓存机制深入剖析
  • 一级缓存源码
  • 二级缓存源码
  • 深入 MyBatis 源码体会设计者思想
  • 源码解析流程
  • 配置解析过程
  • 会话创建
  • 获得 Mapper 对象
  • 执行 SQL
  • 设计到的重要类或者接口
  • Configuration
  • SqlSession
  • Executor
  • MapperProxy
  • StatementHandler
  • ParameterHandler
  • ResultSetHandler
  • MappedStatement
  • MapperMethod
  • SqlSource
  • BoundSql
  • 手写 MyBatis 框架复现设计者思想并总结
  • [ ] 手写 MyBatis 插件案例

    3、专项实战突破

  • [ ] 基于 SpringBeanPostProcess 手写网关

  • 手写 Spring IOC
  • 手写 MyBatis

阶段五:分布式中间件深入剖析与实战

1、互联网企业级消息队列 RocketMQ 应用于实战

  • RocketMQ 高可用方案
  • RocketMQ 具体场景的使用
  • 业务解耦
  • 异步调用
  • 流量削峰
  • RocketMQ 核心概念
  • Name Server
  • Broker
  • producer
  • consumer
  • RocketMQ 特性
  • 订阅与发布
  • 消息顺序
  • 消息过滤
  • 消息可靠性
  • 至少一次
  • 回溯消费
  • 事务消息
  • 消息重试
  • 消息重投
  • 流量控制
  • 死信队列
  • RocketMQ 消费模式
  • Push 模式
  • Pull 模式
  • 数据可靠性分析
  • 同步刷盘
  • 异步刷盘
  • 异步复制
  • 同步双写
  • 消息发生返回状态
  • FLUSH_DISK_TIMEOUT
  • FLUSH_SLAVE_TIMEOUT
  • SLAVE_NOT_AVAILABLE
  • SEND_OK
  • RockeMQ 常见解决方案
  • MQ 消息丢失问题
  • 重复消费问题
  • 消息乱序问题
  • 消费者处理慢的问题
  • RocketMQ 调优

2、互联网企业级注册中心 ZooKeeper

  • 深入理解分布式架构与 CAP 理论
  • 分布式环境产生问题分析
  • 分布式与注册中心讲解
  • CAP 定理详解
  • AP / CP 选择标准分析
  • 拆解 ZooKeeper 注册中心体系结构
  • 剖析 ZooKeeper 注册中心总体架构设计
  • 设计目的分析与讲解
  • 核心概念分析与讲解
  • 权限控制分析与讲解
  • ZooKeeper 存储结构分析与讲解
  • 实战场景分析
  • 命名服务详解
  • 配置管理详解
  • 集群管理详解
  • 分布式锁详解
  • 深入服务注册与发现流程
  • 注册中心主要功能说明
  • 服务注册机制详解
  • 服务发现机制详解
  • 服务健康机制详解
  • 节点变更通知机制详解
  • ZooKeeper Leader 选举机制详解分析
  • 节点角色分析
  • 选主逻辑深度剖析
  • 选主源码分析
  • 分布式一致性协议分析
  • ZAB 协议分析
  • 数据一致性保障源码分析
  • Watcher 机制深度剖析
  • Watch 基本流程讲解
  • 服务端接收请求处理流程深度剖析
  • 客户端接收服务端请求响应深度剖析
  • Watcher 机制事件触发深度剖析
  • 客户端事件响应
  • 服务端事件响应
  • 服务端接收请求深度分析
  • 集群模式下的处理流程分析

3、互联网企业级 RPC 框架 Dubbo 应用与实战

  • RPC 服务原理分析
  • RPC 组成结构剖析
  • RPC 运行流程剖析
  • RPC 实现流程剖析
  • Dubbo 架构概述
  • 远程调用深度讲解
  • 整体设计深度剖析
  • 依赖关系和调用链深度剖析
  • Dubbo 开发应用实战
  • Dubbo 服务注册与发现
  • Dubbo 服务注册实现源码分析
  • Dubbo 服务取消注册源码分析
  • Dubbo 服务订阅源码分析
  • Dubbo 源码的整体设计
  • 服务注册与消费源码剖析
  • 注册中心深度讲解
  • 注册协议深度讲解
  • 服务注册深度讲解
  • 服务发现深度讲解
  • 服务中心检查深度讲解
  • 协议包装者深度讲解
  • 协议包装着深度讲解
  • 注册中心服务讲解
  • Dubbo 扩展 SPI 源码剖析
  • Java SPI 机制剖析
  • Dubbo SPI 机制源码剖析
  • Dubbo 扩展点机制剖析
  • 扩展点自动包装源码分析
  • 扩展点自动装配源码分析
  • 扩展点自适应源码分析
  • 扩展点自动激活源码分析
  • 扩展点整体运行流程分析
  • 负载均衡策略源码分析
  • RandomLoad
  • RoundRobin
  • LeastActive
  • ConsistentH ash
  • 集群源码剖析
  • 集群整体运行架构图讲解分析
  • 集群 Directory 源码深度分析
  • 集群 Router 源码深度分析
  • 集群 LoadBanlance 源码深度分析
  • 集群 Mock 源码深度分析
  • 集群服务熔断
  • [ ] 集群服务降级

    4、专项突破 - 分布式电商商品微服务项目实战

  • [ ] 需求分析

  • 功能需求
  • 信息加密和缓存设计
  • 商品下架后无需再被浏览
  • 业务需求
  • 锁定商品需在 30 分钟完成支付
  • 库存不允许超卖
  • 商品不允许卖不出去
  • 性能需求
  • 秒级别时间内完成商品下单
  • 秒级别时间内完成查看商品详情
  • 1500TPS、3000QPS
  • 架构设计
  • 高复用逻辑封装与高复用服务响应设计
  • 安全解决方案设计
  • 前后端分离方案实践
  • 架构选型
  • 存储服务选型
  • 缓存服务选型
  • RPC 中间件选型
  • 异步消息通讯选型
  • 分库分表中间件选型
  • 配置中心选型
  • 分布式事务方案选择
  • 资源评估
  • 根据QPS和数量评估Redis服务器数量
  • 集群规划
  • 结合资源评估结果规划集群部署方案
  • 代码落地

阶段6:分布式框架中间件深入剖析与实战

1、互联网企业级 SpringBoot 框架设计与实战

  • SpringBoot 框架体系结构分析
  • SpringBoot 的总体架构设计剖析
  • SpringBoot 的自动加载机制与原理
  • SpringBoot 的运行原理剖析

2、互联网企业级 SpringCloud Alibaba 应用与实战

  • 系统架构演变
  • 单体应用架构分析
  • 垂直应用架构分析
  • 分布式架构分析
  • SOA 架构分析
  • 微服务架构分析
  • 流式框架分析
  • 框架体系结构讲解
  • 主要功能整体讲解
  • 各组件说明
  • Sentinel
  • Nacos
  • RocketMQ
  • Dubbo
  • Seata
  • 其他云产品
  • 各组件版本适配
  • 分布式流控治组件 Sentinel 版本说明
  • 分布式注册中心 & 配置中心组件 Nacos 版本说明
  • 分布式消息队列 RocketMQ 版本说明
  • 分布式 RPC 组件 Dubbo 版本说明
  • 分布式事务组件 Seata 组件版本说明
  • 服务治理原理分析
  • Nacos 服务注册和发现详解和源码深入分析
  • 服务治理原理分析
  • 常用注册中心分析
  • Nacos
  • Eureka
  • Consul
  • Zookeeper
  • Nacos 与服务消费原理分析
  • Nacos 与服务生产原理分析
  • Nacos Config 深入分析
  • 基于 Nacos 的负载均衡
  • 自定义负载均衡策略分析
  • 基于 Ribbon 的负载均衡策略分析
  • 基于 Feigin 实现服务调用
  • Sentinel 服务治理负载均衡和熔断器原理分析
  • 高并发问题分析
  • 服务雪崩效应分析
  • 线程池资源耗尽分析
  • 服务内存耗尽分析
  • 服务治理之服务容错深入分析
  • 隔离场景分析
  • 超时场景分析
  • 限流场景分析
  • 熔断场景分析
  • 控制台使用原理
  • 流控底层原理分析
  • 服务治理思路与算法剖析
  • Sentinel 底层设计原理剖析
  • Sentinel 关键代码剖析
  • Sentinel 流控核心源码全揭秘
  • Sentinel 负载均衡核心源码全揭秘
  • 深入项目实战
  • Spring Cloud Alibaba 分布式项目实战结构讲解
  • 分布式基础环境安装清单
  • 分布式服务器微服务集群信息
  • 分布式事务组件 Seata 服务搭建
  • 分布式注册中心 & 配置中心组件 Nacos 服务搭建
  • 分布式流控治理组件 Sentinel 服务搭建
  • Spring Cloud Alibaba 分布式项目实战部署运行流程讲解
  • 微服务网关落地
  • 生产者模块落地
  • 消费者模块落地
  • 注册中心模块落地
  • 缓存模块落地
  • 数据库模块落地
  • 接口协议定义落地
  • 配置中心实时刷新落地
  • 多环境运行配置落地
  • Spring Cloud Alibaba 分布式项目实战运行流程分析
  • Spring Cloud Gateway 服务网关剖析
  • Spring Cloud 微服务网关对比
  • Spring Cloud Gateway 服务网关核心架构剖析
  • Spring Cloud Gateway 服务网关执行流程分析
  • Spring Cloud Gateway 服务网关核心功能讲解
  • 断言
  • 过滤器
  • 网关限流
  • 分布式配置中心
  • 配置中心选型对比
  • 配置中心 Apollo 应用与实战
  • Nacos 分析与实战
  • 详解 Spring Cloud Alibaba 服务调用请求流程链路跟踪
  • 微服务链路跟踪组件对比分析
  • zipkin
  • skywalking
  • pinpoint
  • cat
  • 链路追踪作用分析
  • 链路追踪存储结构分析
  • 链路追踪核心概念讲解
  • 链路追踪组件安装部署落地
  • [ ] 链路追踪项目集成落地实践

    3、专项突破 - 分布式在线教育微服务项目实战

  • [ ] 需求分析

  • 功能需求
  • 业务需求
  • 性能需求
  • 架构设计
  • 架构选型
  • 资源评估
  • 集群规划
  • 代码落地

微信图片_20210729161516.png