1、java语言
(1)编程基础
基础语法、面向对象、接口、容器、异常、泛型、反射、注解、IO
(2)jvm
类加载机制、字节码执行机制、jvm内存模型、GC垃圾回收、JVM性能监控与故障定位、jvm调优
(3)多线程/并发
并发编程的基础(指令重排序、原子性、并发性等)、线程池、锁、并发容器、原子类、JUC并发工具
(4)其他
java8、集合
2、数据结构和算法
(1)数据结构
字符串、数组、链表、堆、栈、队列、二叉树、哈希、图
(2)算法
排序、查找、贪心、分治、动态规划、回溯
3、计算机网络
ARP协议、IP协议、ICMP协议、TCP协议、UDP协议、DNS协议、HTTP协议、HTTPS协议、session、cookie
4、数据库
(1)基础
sql语句的书写、sql语句的优化、事务、隔离级别、索引、锁、增删改查、三范式、表设计、主外键、关联查询(left join、right join、inner join)、数据库函数使用、mysql的四大特性、四种隔离级别..
(2)数据库拔高
(1)全局锁,表锁,行锁,死锁,乐观锁,悲观锁..
(2)索引,索引底层实现原理,存储方式,如何创建索引,优化索引..
5、操作系统
进程、线程、并发、锁、内存管理和调度、IO原理
6、设计模式
单例、工厂、代理、策略、模板方法、关联者、适配器、责任链、建造者
7、研发工具
(1)开发工具
eclipse、IDEA、vscode
(2)Linux系统
- 常用命令、shell脚本
- 简单命令(安装jdk、数据库、web服务器安装、安装redis、Nginx,在上面部署和启动项目,观察项目的动态日志等)
(3)代码管理工具
SVN、Git
(4)项目管理/构建工具
Maven、Gradle
8、框架(后端)
(1)spring家族框架
spring(IoC、AOP)、springmvc、spring boot(自动配置、开箱即用、整合web、整合数据库(事务问题)、整合权限(Shiro、Spring Security)、整合各种中间件(Redis、MQ、RPC框架、NIO框架))
(2)服务器软件
web服务器(Nginx)、应用服务器(Tomcat、Jetty、Undertow)
(3)中间件
缓存(Redis(5大基础数据类型、事务、管道、持久化、集群)、消息队列(RocketMQ、RabbitMQ、Kafka)、RPC框架(Dubbo、gRPC、Thrift、Spring Cloud、Netty))
(4)数据库框架
mybatis、hibernate、jpa、连接池(Druid、HikraiCP、C3P0)、分库分表(MyCAT、Sharding-JDBC、Sharding-Sphere)
(5)搜索引擎
ElasticSearch、Solr
(6)分布式/微服务
- 服务发现注册(Eureka、Consul、Zookeeper、Nacos)
- 网关(Zuul、Gateway)
- 服务调用(Ribbon、Feign)
- 熔断/降级(Hystrix)
- 配置中心(Config、Apollo、Nacos)
- 认证和鉴权(Spring Security、OAuth2、SSO单点登录)
- 分布式事务(JTA接口(Atomikos组件、2PC、3PC)
- XXA模式、TCP模式(tcc-transcationByteTCC、EasyTrabscation、Seata)
- SAGA模式(ServiceComb、Seata)
- LCN模式(tx-lcn)
- 任务调度(Quartz、Elastic-Job)
- 链路追踪与监控(Zipkin、Sleuth、Skywalking)
- 日志分析与监控(ElasticSearch、Logstash、Kibana))
(7)虚拟化/容器化
- 容器技术(Docker)
- 容器编排技术(Kubernetes、Swarm)
9、前端
(1)基础
三大件(html、JavaScript、css)、jQuery、Ajax
(2)模板框架
jsp/jstl、Thymeleaf、FreeMarker
(3)组件化框架
Vue、React、Angular、Node
(4)其他
框架(BootStrap)、日期组件(laydate)、图表统计(echarts.js)、数据结点、(ZTree.js)、vue(使用比较广泛的一个js组件)
10、运维知识
web服务器(Nginx)、应用服务器(tomcat、Jetty、Undertow)、CDN加速、持续集成/持续部署(Jenkins)、代码质量检查(sonar)、日志收集和分析(ELK)
11、缓存和操作糸统
- redis基本数据类型和各种常用命令,数据持久化,持久化恢复
- linux常用命令,重点学linux如何查看日志
- 可以保存的数据类型、主动配置、高并发配置、高可用配置、乐观锁、悲观锁
- redis主从复制,哨兵机制,redis集群搭建
其它学习路线推荐:
MonkTang:Java学习流程https://www.cnblogs.com/MonkTang/p/9204993.html