Spring Cloud微服务架构实战
Ink Zhou 查看讲师
百林哲咨询(北京)有限公司专家团队成员
现就职于一家大型互联网公司,8年软件系统开发经验,对Spring Cloud、微服务、持续集成、持续交付、容器生态圈常用组件均有涉猎。
浏览:3049次
详情 DETAILS

课程简介

学习本课程,学员将会对微服务、Spring Cloud有一个系统、全面的认识。通过学习,学员将能掌握相关的知识体系,并能够投入到项目实战中去。

本课程采用实战优先的原则,讲解如何从0开始编写基于Spring Boot/Cloud开发的微服务,并逐步解决项目中的问题,最终实现一个高可用的微服务架构。

本课程使用目前最新的Spring Cloud Hoxton SR8讲解,各种新特性一览无余!

需要安装:

1.JDK 1.8

2.Maven

3.IntelliJ IDEA(或Spring Tool Suite,不建议原生Eclipse)

课程收益

1.使学员理解微服务是什么、有什么好处、设计原则、拆分原则

2.深入理解Spring Cloud核心组件及相关扩展钩子,能够使用Spring Cloud开发微服务,并具备二次开发Spring Cloud的能力

受众人群

1.对微服务感兴趣的技术人员

2.对Spring Boot感兴趣的技术人员

3.对Spring Cloud感兴趣的技术人员

课程时长

3天(18H)
分享提纲

方向

内容安排

时长

微服务架构及概述

架构的演进史

微服务诞生背景

微服务架构的优点与挑战

微服务拆分方法论(DDD/by name./by verb.等多种方法)

评估拆分是否合理的标准

如何将遗留项目改造成微服务?

1.5

Spring Boot必知必会

什么是Spring Boot

使用Spring Initialzr快速创建应用

强大的Spring Boot Actuator

Spring Boot 配置管理

1

方向

内容安排


Spring Cloud是什么

Spring Cloud简介、核心功能、特点

Spring Cloud版本简介及与Spring Boot的兼容性

Spring Cloud子项目与提供的能力

服务提供者与服务消费者

0.5

服务注册与服务发现-Eureka

服务注册与服务发现原理剖析

服务发现组件对比与选择

Eureka简介架构剖析

编写Eureka Server

高可用Eureka

元数据

RESTful API

自我保护模式

指定网卡

健康检查

【案例】我们做了哪些扩展

【案例】如何基于Eureka Client实现异构预研/新老平台的整合

1.5

服务注册与服务发现-Nacos

服务注册与服务发现作用与原理剖析

Nacos搭建与使用

将应用注册到Nacos

Nacos核心概念

Nacos领域模型

Nacos元数据

搭建Nacos Server高可用集群

【案例】我们做了哪些扩展

1.5

方向

内容安排


客户端侧负载均衡-Ribbon

负载均衡原理剖析

负载均衡器对比与选择

Ribbon简介

Ribbon核心组件详解

原生Ribbon API

引入Ribbon后的架构演进

编写第一个Ribbon Client

Ribbon配置自定义

扩展Ribbon

Eager Load

1

客户端侧负载均衡-Spring Cloud LoadBalancer

Spring Cloud LoadBalancer是什么

Spring Cloud LoadBalancer上手

Spring Cloud LoadBalancer API

扩展Spring Cloud LoadBalancer

1

声明式的HTTP客户端-Feign

Feign简介

编写第一个Feign Client

Feign核心组件详解

Feign配置自定义与最佳实践总结

继承特性与最佳实践总结

压缩

日志

构造多参数请求

1

方向

内容安排


高并发容错-Hystrix

雪崩效应是什么?有哪些思路?

常见容错思路与方案

业界常用容错组件对比与选择

Hystrix简介

Hystrix入门

Hystrix配置详解

Feign使用Hystrix

使用FallbackFactory检查回退原因

Feign启用/禁用Hystrix

Hystrix监控

Hystrix Dashboard可视化监控数据

Turbine简介

编写Turbine Server

消息中间件模式

坑:【Dashboard上没有数据怎么办?Turbine版本与坑】

坑:ThreadLocal无法传递与隔离策略详解

【案例】Hystrix配置那么多,我们是怎么配置的?

2

高并发容错-Sentinel

Sentinel是什么

使用Sentinel实现容错

Sentinel Dashboard

流控规则

降级规则

热点规则

系统规则

授权规则

代码配置规则

Sentinel API

SentinelResource注解详解

RestTemplate整合Sentinel

Feign整合Sentinel

规则持久化

集群流控

2

API Gateway-Zuul

API网关简介

API网关对比与选择

编写Zuul

Zuul监控与调试端点

由配置详解

文件上传

过滤器详解

容错与回退

高可用Zuul

整合异构平台-Sidecar

Debug Zuul

扩展Zuul

坑的总结:【转发不正常怎么定位?安全如何管理】

【案例】Zuul实现认证与授权

【案例】Zuul实现限流与降级

1

API Gateway-Spring Cloud Gateway

Spring Cloud Gateway是什么?

Spring Cloud Gateway上手

Spring Cloud Gateway核心概念

Spring Cloud Gateway架构剖析

路由谓词工厂详解

过滤器工厂详解

全局过滤器详解

扩展Spring Cloud Gateway

1

配置中心-SpringCloud Config

 

为什么要使用配置中心

配置中心对比与选择

Spring Cloud Config简介

编写ConfigServer

集成ConfigClient

Git仓库配置详解

配置属性加解密

配置手动刷新

自动刷新-SpringCloud Bus

Config ServerEureka配合使用

安全

高可用

坑的总结【高可用搭建那么难怎么办?配置管理没有界面怎么办?】

【案例】我们实际项目是怎么用的、配置管理的最佳实践总结

2

配置中心-Nacos

为什么要使用配置中心

使用Nacos管理配置

如何实现配置回滚与配置刷新

引导上下文

如何实现应用配置共享

Nacos数据持久化

配置管理最佳实践

Nacos配置管理剖析

1

分布式事务-Seata

Seata是什么

整合Seata

AT模式实现事务

TCC模式实现事务

Saga模式实现事务

1

调用链监控-Spring Cloud Sleuth

调用链跟踪的必要性

调用链跟踪原理剖析

Sleuth是什么

核心概念

入门示例:整合Sleuth

Sleuth配合ELK

Zipkin简介

Zipkin Server编写

Zipkin UI

微服务整合Zipkin

消息中间件模式整合Zipkin

使用Elasticsearch作为Zipkin Server的后端存储

生成依赖关系图

1

微服务安全

微服务安全常用方案对比与选择

无状态VS有状态

处处安全方案

外部无状态,内部有状态方案

内部裸奔方案

裸奔方案增强版

我司方案

基于Zuul实现微服务安全

基于Spring Cloud Gateway实现微服务安全

1.5

最佳实践总结

Spring Cloud最佳实践总结

性能优化的思路与实践总结

坑的总结(如何避免常见问题)

解决问题的思路总结

生产可用的快速开发平台

与遗留技术栈的共存、割接方案

1



企业服务热线:400-106-2080
电话:18519192882
投诉建议邮箱:venus@bailinzhe.com
合作邮箱:service@bailinzhe.com
总部地址:
北京市-丰台区-汽车博物馆东路6号3号楼1单元902-B73(园区)
全国客户服务中心:
天津市-南开区-桂苑路15号鑫茂集团鑫茂军民园1号楼A座802-803
公众号
百林哲咨询(北京)有限公司 京ICP备2022035414号-1