课程费用

5800.00 /人

课程时长

3

成为教练

课程简介

学习本课程,学员将会对微服务、Spring Boot、Spring Cloud有一个比较系统、全面的认识。通过学习,学员将能掌握相关的知识体系,并能够投入到项目实战中去。
本课程采用实战优先的原则,讲解如何从0开始编写基于Spring Boot/Cloud开发的微服务,并逐步解决项目中的问题,最终实现一个高可用的微服务架构。然后,讲解如何将应用容器化,并部署到Docker。同时,在授课过程中会穿插实际项目中的例子,并总结实际项目中的最佳实践。
本课程使用Spring Boot2.0 + Spring Cloud Finchley SR1进行讲解,各种新特性一览无余!
需要安装:
1. JDK1.8
2. Maven
3. IntelliJ IDEA(或Spring Tool Suite,不建议原生Eclipse)
4. Docker 17.12

目标收益

 使学员理解微服务是什么、有什么好处、设计原则、拆分原则
 能够使用Spring Cloud开发微服务
 深入理解Spring Cloud核心组件,理解组件之间协作关系,并且知晓其原理,做到之所以然,并知其所以然
 深入理解Spring Cloud常用扩展钩子,具备二次开发Spring Cloud的能力

培训对象

 对微服务、Spring Cloud感兴趣的架构师、Java开发人员

课程大纲

前置知识预热  从Spring讲起…
 Spring MVC应学应会
 Spring Data JPA应学应会
 Maven应学应会
微服务架构及概述  架构的演进史
 微服务诞生背景
 微服务架构的优点与挑战
 微服务的设计原则
 如何拆分微服务
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上手
 使用代码自定义Feign的配置
 使用配置自定义Feign的配置
 继承特性
 压缩
 日志
 构造多参数请求
 Feign常见问题总结
 Feign性能调优
 Feign vs RestTemplate
断路器-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
 Sleuth配合ELK
 Zipkin简介
 Zipkin Server编写
 Zipkin UI
 微服务整合Zipkin
 消息中间件模式整合Zipkin
 使用Elasticsearch作为Zipkin Server的后端存储
 生成依赖关系图
微服务安全  微服务安全的原则
 Spring Cloud Security方案
 Zuul上统一控制方案
 Session共享方案
 外部无状态,内部有状态方案
 我司方案
快速落地 输入面向生产的脚手架,包含了:
 基于Spring Cloud的快速开发脚手架
 多维度微服务监控能力
前置知识预热
 从Spring讲起…
 Spring MVC应学应会
 Spring Data JPA应学应会
 Maven应学应会
微服务架构及概述
 架构的演进史
 微服务诞生背景
 微服务架构的优点与挑战
 微服务的设计原则
 如何拆分微服务
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上手
 使用代码自定义Feign的配置
 使用配置自定义Feign的配置
 继承特性
 压缩
 日志
 构造多参数请求
 Feign常见问题总结
 Feign性能调优
 Feign vs RestTemplate
断路器-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
 Sleuth配合ELK
 Zipkin简介
 Zipkin Server编写
 Zipkin UI
 微服务整合Zipkin
 消息中间件模式整合Zipkin
 使用Elasticsearch作为Zipkin Server的后端存储
 生成依赖关系图
微服务安全
 微服务安全的原则
 Spring Cloud Security方案
 Zuul上统一控制方案
 Session共享方案
 外部无状态,内部有状态方案
 我司方案
快速落地
输入面向生产的脚手架,包含了:
 基于Spring Cloud的快速开发脚手架
 多维度微服务监控能力
提交需求