目录

前置知识

1.常用工具

2.集合知识

3.JDK特性

4.MySQL基础

5.SSM核心基础

6.SpringBoot应用

一、低层基础

二、并发编程(重要)

三、RPC通信框架原理

四、消息中间件应用与原理(重要)

五、缓存中间件(重要)

六、软件设计基础

七、分布式架构实践

1.高并发、高可用

2.通信与调用

3.缓存中间件

4.存储中间件

5.分布式锁

6.分式事务

7.分布式链路追踪

8.分布式预警监控

9.分布式权限控制

10.分布式ID

11.分布式幂等

12分布式任务

13.分布式会话

八、微服务架构

1.配置中心

2.服务注册与发现

3.网关与路由

4.服务调用

5.负载均衡

6.熔断、降级、限流、断路器

7.Spring Cloud netflix

8.Spring Cloud Alibaba

九、系统性能优化(重要)

1.JVM性能调优

2.MySQL性能优化

3.Tomcat性能优化

4.Nginx性能优化

5.高并发大流量服务调优

十、海量数据存储

十一、海量数据处理

十二、网络基础设施建设(运维)

十三、服务保障之DevOps

十四、软件测试

十五、ServiceMesh


有这样一句话,Redis搞定,架构师就搞定了一半。作为架构师,有两大工具必不可少,一个叫Redis,一个叫Nginx。但是他们都不简单,源码都是c编写的。

下面我们就简单讲一讲架构师的基本技术要求。

前置知识

1.常用工具

  1. Git
  2. Maven
  3. Gradle
  4. Idea

2.集合知识

到源码级别。

3.JDK特性

  1. lambda表达式;
  2. stream流;
  3. JDK8以上的新特性;

4.MySQL基础

5.SSM核心基础

6.SpringBoot应用

架构师技术要求

一、低层基础

  1. 操作系统/计组;
  2. IO与网络编程;
  3. 算机网络;
  4. linux系统与网络运维;
  5. 算法与数据结构;

二、并发编程(重要)

  1. 操作系统并发支持;
  2. 阻塞队列;
  3. Java内存模型;
  4. 线程池;
  5. 并发集合;
  6. CAS与原子操作;
  7. ThreadLocal;
  8. JUC;
  9. JMH;
  10. 单机最快mq-Disruptor(了解)

三、RPC通信框架原理

  1. Zookpeer;
  2. Dubbo;
  3. RPC/GPRC
  4. Restful
  5. Thrift
  6. Netty

四、消息中间件应用与原理(重要)

  1. 消息协议;
  2. RocketMQ应用与实战;
  3. RocketMQ原理与源码;;
  4. Kafka应用与实战;
  5. Kafka原理与源码;
  6. Pulsar分布式消息处理平台应用与实战(了解)

之前我们一直讲四大消息中间件,但是上面我们没有提到ActiveMQ和RabbitMQ,因为ActiveMQ基本上没人用了,RabbitMQ用的人越来越少。现在用的最多的有两个,一个是RocketMQ,一个是Kafka。

五、缓存中间件(重要)

最流行的是Redis。

  1. Redis可靠性;
  2. Redis原理;
  3. Redis集群

六、软件设计基础

  1. UML-统一建模语言;
  2. 设计模式;
  3. 中小型系统开发-敏捷开发理论与实践;
  4. 从立项到路落地,软件工程常用文档编写;

七、分布式架构实践

1.高并发、高可用

  1. 网络通信原理;
  2. 四层负载均衡;
  3. 七层负载均衡;
  4. 单机并发方案;
  5. 集群并发方案;
  6. ETCD
  7. HAPRoxy
  8. KeepAlived
  9. Zookeeper

2.通信与调用

  1. RPC/GPRC
  2. Restful
  3. Thrift
  4. Netty
  5. Dubbo

3.缓存中间件

4.存储中间件

  1. FastDFS
  2. HDFS
  3. HBASE
  4. MongoDB
  5. TiDB
  6. Neo4J
  7. InfluxDB
  8. OceanBase
  9. ClickHouse
  10. Pinot

5.分布式锁

  1. Redis
  2. ZK
  3. etcd
  4. DB与分布式锁

6.分式事务

  1. 2PC
  2. 3PC
  3. SAGA
  4. 可靠消息
  5. 最大努力通知
  6. 柔性事务与最终一致性
  7. SEATA落地

7.分布式链路追踪

  1. ZipKin
  2. SkyWalking(用的比较多)

8.分布式预警监控

  1. Spring Boot Admin
  2. Prometheus(重点)
  3. Zabbix
  4. Grafana

9.分布式权限控制

  1. JWT
  2. OAUTH2.0
  3. SpringSecurity
  4. Shiro

10.分布式ID

11.分布式幂等

12分布式任务

  1. xxlJob

13.分布式会话

  1. SpringCloud Session

八、微服务架构

1.配置中心

2.服务注册与发现

3.网关与路由

  1. SpringCloud GateWay
  2. Zuul
  3. Nginx 
  4. OpenResty
  5. apisix
  6. kong

4.服务调用

5.负载均衡

6.熔断、降级、限流、断路器

7.Spring Cloud netflix

8.Spring Cloud Alibaba

九、系统性能优化(重要)

1.JVM性能调优

  1. JVM类加载机制
  2. JVM内存模型
  3. JVM字节码文件深度剖析
  4. 垃圾收集机制
  5. 垃圾收集器
  6. JVM调优工具
  7. GC日志分析
  8. JVM调优实战

2.MySQL性能优化

3.Tomcat性能优化

4.Nginx性能优化

5.高并发大流量服务调优

十、海量数据存储

  1. ES
  2. ClickHouse和Doris
  3. 高并发下MySQL架构与配置优化实战
  4. 分布式NewSQL数据TiDB集群

十一、海量数据处理

  1. Hadoop分布式计算框架MapReduce
  2. Hadoop海量数据存储框架HBase
  3. Hadoop数据仓库工具Hive
  4. Flink实时计算引擎
  5. Flink城市交通实时监控平台

主要分为批处理和实时处理,现在主要讲红仓一体。

十二、网络基础设施建设(运维)

  1. 基础设施解决多机房全球同服问题
  2. 基础设施解决服务无故障自动摘除、自动发现
  3. 多级缓存资源静态化落地实战
  4. DNS相关
  5. CDN

十三、服务保障之DevOps

持续继承CI/DI Gitlab/Jenkins

JIRA/禅道

Deploy:docker、vagrant、puppet、chef、ansible、saltstack、k8s、Istio

镜像仓库:Harbor

监控:ELK、Zabbix、Prometheus、Grafana

代码检测:SonarCube

十四、软件测试

十五、ServiceMesh

被称作第二代微服务,基于云原生的微服务。

  1. istio 3H
  2. 基础环境安装
  3. 安装istio和bookinfo
  4. istio组件之kiali
  5. istio原理
  6. istio流量管理与命名空间
  7. istio虚拟服务和目标规则
  8. istio超时重试与灰度发布
  9. istio网关essGateway
  10. istio熔断与故障注入
  11. istio流量镜像与可观测性