Spring Cloud与Kubernetes微服务架构培训大纲
微服务架构及概述
架构的演进史
微服务诞生背景
微服务架构的优点与挑战
微服务的设计原则
如何拆分微服务
Spring Boot概述
Spring Boot简介、诞生背景、特点
使用SpringInitialzr快速创建应用
编写第一个SpringBoot应用
Spring Boot配置方式、profile、健康检查
方向
内容安排
Spring Cloud概述
Spring Cloud简介、核心功能、特点
Spring Cloud版本简介及与Spring Boot的兼容性
Spring Cloud子项目与提供的能力
服务提供者与服务消费者
服务注册与服务发现-Eureka
服务注册与服务发现作用与原理剖析
Eureka简介与架构剖析
编写Eureka Server
高可用Eureka
用户认证
元数据【重要的扩展钩子】
RESTful API【重要的能力钩子】
自我保护模式【重要特性】
指定网卡
健康检查【作用、存在的坑以及总结】
方向
内容安排
客户端侧负载均衡-Ribbon
负载均衡原理剖析
Ribbon简介
原生Ribbon API
引入Ribbon后的架构演进
编写第一个Ribbon Client
使用代码自定义Ribbon的配置
使用配置自定义Ribbon的配置
Eager Load
声明式的HTTP客户端-Feign
Feign简介
编写第一个Feign Client
使用代码自定义Feign的配置
使用配置自定义Feign的配置
继承特性
压缩
日志
构造多参数请求
方向
内容安排
断路器-Hystrix
浅谈雪崩效应及危害
如何容错
Hystrix简介
整合Hystrix
Hystrix配置详解
Feign使用Hystrix
使用FallbackFactory检查回退原因
Feign启用/禁用Hystrix
Hystrix监控
Hystrix Dashboard可视化监控数据
Turbine简介
编写Turbine Server
消息中间件模式
API Gateway-Zuul
网关的必要性
简介
入门示例:编写一个API Gateway
/routes端点
路由配置详解
/filters端点
Zuul的安全与Header传递
文件上传
过滤器详解
容错与回退
高可用Zuul
整合异构平台-Sidecar
Debug Zuul
配置中心-SpringCloud Config
为什么要使用配置中心
Spring Cloud Config简介
编写ConfigServer
集成ConfigClient
Git仓库配置详解
配置属性加解密
配置手动刷新
自动刷新-SpringCloud Bus
Config Server与Eureka配合使用
安全
高可用
调用链监控-SpringCloud Sleuth
为什么要实现调用链跟踪
简介
基本概念
入门示例:整合Sleuth
Sleuth配合ELK
Zipkin简介
Zipkin Server编写
Zipkin UI
微服务整合Zipkin
消息中间件模式整合Zipkin
使用Elasticsearch作为Zipkin Server的后端存储
生成依赖关系图
Docker入门
Docker简介
安装Docker
镜像加速器
Docker常用命令
Dockerfile详解
Dockerfile指令详解
Dockerfile佳实践
镜像管理
Docker Hub
Docker Registry
第三方Docker Registry:Nexus/Habor
Docker工具
使用Maven构建Docker镜像
可视化管理工具
Docker Compose
Compose的安装
快速入门
docker-compose.yml常用命令
docker-compose常用命令
控制服务启动顺序
在生产环境中使用Docker Compose
使用Docker Compose伸缩应用
Kubernetes入门
安装(minikube)
Kubernetes架构
基本组件及常用插件
Kubernetes命令详解
Kubernetes术语及详解
主要是根据Kuberntes官方文档描述进行系统讲解:
Pod详解
RC
RS
Deployment
ReplicaSet
Job
Secret
Service
存储
StatefulSet等
Kubernetes资源调度
资源分配
扩容与缩容:手动方式(kubectl scale)、HPA方式等
各种调度方式,例如亲和性调度
升级和回滚 |