Spring Cloud / Alibaba 微服务架构实战

Spring Cloud / Alibaba 微服务架构实战

没有实战微服务架构的人,不能说真懂微服务。因为除了技术的实现,这其中还涉及了难以量化的业务拆分和组件化思想。这门课就带大家以电商工程为例,基于Spring Cloud / SpringCloud Alibaba ,融合常用组件/中间件,进行微服务架构设计和开发,获取真正的企业级微服务解决方案。

适合人群
对微服务感兴趣的同学
工作、学习中对微服务有需求的同学

技术储备
Linux 基本命令使用
能够熟练应用 Spring、SpringBoot 框架

环境参数
SpringCloud Hoxton.SR8
SpringCloud Alibaba 2.2.4.RELEASE
SpringBoot 2.3.1.RELEASE
JDK 1.8
Maven 3.6.3
MySQL 5.7.21
Redis 6.0.10
Kafka 2.5.0
RocketMQ 4.8.0

章节目录:

第1章 课程介绍 试看 3 节 | 7分钟
本章中,将会对课程的内容做介绍说明,总览课程中涉及到的知识点和学习方向。
收起列表
视频:
1-1 关于课程你需要了解的 (06:02)
试看
图文:
1-2 【准备工作】安装IDEA插件
图文:
1-3 课程知识点脑图
第2章 理解微服务架构,清楚微服务设计原则 3 节 | 20分钟
微服务在工程应用领域不是一开始就出现的,本章将带你领略工程架构的升级、改造历史;同时,对于微服务架构的工程来说,也需要学习、掌握其必须遵循的设计原则。
收起列表
视频:
2-1 微服务架构的演进过程 (11:25)
视频:
2-2 微服务架构需要遵循的原则 (08:22)
作业:
2-3 章节思考题
第3章 设计电商工程,把握全局视角 试看 6 节 | 58分钟
课程以电商工程为例落地微服务解决方案,本章将会使用 DDD 的思想对电商工程的业务、拆分方案进行解释说明;同时,会进入到编码阶段,搭建电商工程、实践通用工具与通用配置两大基础模块。
收起列表
视频:
3-1 认识领域驱动设计 DDD (06:53)
视频:
3-2 电商工程业务解读及微服务模块拆分 (08:03)
视频:
3-3 电商工程的第一行代码 (12:37)
视频:
3-4 工程通用与配置两大基础模块(上) (15:44)
视频:
3-5 工程通用与配置两大基础模块(下) (14:33)
试看
作业:
3-6 章节思考题
第4章 Alibaba Nacos:服务注册与配置中心 5 节 | 57分钟
我们将会使用 Alibaba Nacos 来作为服务治理的工具,实现服务注册与服务发现;同时,应用 Nacos 的配置管理功能实践动态配置解决方案。
收起列表
视频:
4-1 部署 Alibaba Nacos 单机版本 (23:22)
视频:
4-2 集群化部署 Alibaba Nacos (09:40)
视频:
4-3 Alibaba Nacos Client 服务注册与发现 (23:58)
图文:
4-4 Nacos 的配置与安装
作业:
4-5 章节思考题
第5章 SpringBoot Admin 微服务应用监控 4 节 | 56分钟
应用监控是一个完备的系统所不可或缺的工具,本章将会带你使用 SpringBoot Admin 搭建监控模块,并辅以安全访问控制保证服务模块的可控性。
收起列表
视频:
5-1 搭建 SpringBoot Admin 监控服务器 (21:35)
视频:
5-2 监控中心服务器添加安全访问控制 (17:46)
视频:
5-3 SpringBoot Admin 应用监控总结 (16:31)
作业:
5-4 章节思考题
第6章 授权、鉴权中心微服务 10 节 | 144分钟
授权、鉴权即实现对用户的身份校验,是任何一个工程的基础服务。本章将会使用 JWT + RSA256 实现工程的授权、鉴权,也是我们电商工程的第一个微服务。
收起列表
视频:
6-1 授权、鉴权中心微服务功能设计 (11:31)
视频:
6-2 搭建授权、鉴权中心微服务 (09:45)
视频:
6-3 数据表及 ORM 过程 (25:08)
视频:
6-4 生成 RSA256 公钥和私钥对 (20:55)
视频:
6-5 基于 JWT + RSA256 的授权(1) (21:22)
视频:
6-6 基于 JWT + RSA256 的授权(2) (09:01)
视频:
6-7 基于 JWT + RSA256 的鉴权 (11:53)
视频:
6-8 验证服务可用性 (13:36)
视频:
6-9 授权、鉴权中心微服务总结 (20:49)
作业:
6-10 章节思考题
第7章 SpringCloud Gateway 微服务网关 试看 16 节 | 211分钟
Gateway 是 SpringCloud 框架的第二代网关,也是目前网关实现上的事实标准。这一章我会解析 Gateway 的组成,包含路由、断言及过滤器。同时,在 Gateway 中向授权、鉴权微服务请求转发,实现登录和注册功能。另外,我们使用 Nacos 的配置管理功能实现了动态路由配置。…
收起列表
视频:
7-1 第二代微服务网关组件 SpringCloud Gateway (07:25)
视频:
7-2 谓词 Predicate 的原理与应用(上) (15:26)
视频:
7-3 谓词 Predicate 的原理与应用(下) (13:22)
视频:
7-4 集成 Alibaba Nacos 实现动态路由配置 (17:32)
视频:
7-5 注册网关事件***(上) (22:16)
视频:
7-6 注册网关事件***(下) (18:17)
视频:
7-7 验证网关事件***的可用性 (08:09)
视频:
7-8 解读 SpringCloud Gateway Filter (14:51)
视频:
7-9 局部过滤器 – 校验 Header 中的 Token (08:06)
视频:
7-10 缓存 HTTP 请求 Body 的全局过滤器 (17:40)
视频:
7-11 登录、注册、鉴权全局过滤器(上) (14:38)
试看
视频:
7-12 登录、注册、鉴权全局过滤器(下) (13:54)
视频:
7-13 代码与文件两种方式配置网关路由 (13:20)
视频:
7-14 验证网关微服务功能可用性 (16:04)
视频:
7-15 SpringCloud Gateway 微服务入口网关总结 (09:42)
作业:
7-16 章节思考题
第8章 SpringCloud Sleuth + Zipkin:分布式日志追踪 9 节 | 79分钟
微服务架构下的工程不可避免的会存在微服务通信,即微服务之间存在功能依赖,那么,就需要有工具或组件实现分布式链路、日志追踪。SpringCloud Sleuth 通过 Span 和 Trace 实现了链路追踪,Zipkin 则能够收集并图形化展示这些链路数据。…
收起列表
视频:
8-1 SpringCloud Sleuth + Zipkin 概览 (10:52)
视频:
8-2 集成 SpringCloud Sleuth 实现微服务通信跟踪 (18:26)
视频:
8-3 搭建 Zipkin Server 实现对跟踪信息的收集 (14:36)
视频:
8-4 SpringCloud Sleuth 整合 Zipkin 实现分布式链路跟踪、收集 (13:25)
视频:
8-5 SpringCloud Sleuth 设置采样率、抽样收集策略 (10:48)
视频:
8-6 SpringCloud Sleuth + Zipkin 分布式日志追踪总结 (10:13)
图文:
8-7 Kafka 的安装与运行
图文:
8-8 Zipkin 的安装与配置
作业:
8-9 章节思考题
第9章 用户账户微服务 16 节 | 238分钟
用户账户是我们要实现的第一个功能微服务,在此之前我们还需要做一些准备工作:用户身份统一拦截获取请求用户信息、引入 Swagger 生成工程文档。之后,实现用户地址和用户余额两大核心功能,并完成微服务功能可用性测试。…
收起列表
视频:
9-1 用户身份登录统一拦截 (25:42)
视频:
9-2 集成 Swagger2 实现代码即文档(上) (11:07)
视频:
9-3 集成 Swagger2 实现代码即文档(下) (10:19)
视频:
9-4 用户账户微服务功能设计 (12:18)
视频:
9-5 数据表及 ORM 过程(1) (33:50)
视频:
9-6 数据表及 ORM 过程(2) (16:42)
视频:
9-7 用户地址与余额服务接口定义 (13:26)
视频:
9-8 用户地址相关服务接口实现 (20:42)
视频:
9-9 用户地址服务接口可用性测试(测试用例) (19:19)
视频:
9-10 用户余额相关服务接口实现 (11:41)
视频:
9-11 用户余额服务接口可用性测试(测试用例) (10:09)
视频:
9-12 用户账户微服务对外 HTTP 接口 (17:15)
视频:
9-13 验证用户账户微服务功能可用性(上) (14:11)
视频:
9-14 验证用户账户微服务功能可用性(下) (10:51)
视频:
9-15 用户账户微服务总结 (10:13)
作业:
9-16 章节思考题
第10章 商品微服务
商品微服务提供两大核心功能:异步入库商品信息与商品信息查询。为了对异步任务进行监控管理,我们需要实现监控切面与代理执行管理器;商品信息查询是非常频繁的操作,我们使用 Redis 缓存数据,提高工程的并发性能。
第11章 微服务通信 Ribbon + OpenFeign
微服务架构下的工程存在多个独立部署的微服务,这些微服务之间不可避免的会存在功能依赖,所以,我们需要学习微服务间的通信机制。企业级中最流行的通信方案是 OpenFeign,它是基于 Ribbon 实现的,且最底层都是依赖 RestTemplate,我会在这一章讲解它们的前世今生。…
第12章 SpringCloud Netflix Hystrix 实现微服务容错
微服务之间存在依赖,那么就一定要考虑下游服务的可用性,即要做好熔断、降级和隔离。Hystrix 是目前企业级中应用最为广泛的组件,我除了会讲解基本的容错功能之外,还会引入请求缓存、请求合并等高级特性。
第13章 基于 SpringCloud Stream 构建消息驱动微服务
消息队列是构建消息驱动服务的基础,不过,不同的团队、项目可能偏好于不同的消息中间件,例如 Kafka、RocketMQ 等等。那么,为了屏蔽这些中间件的底层细节,Stream 组件使用统一的 API 与它们进行交互,实现了一套代码可以应用于多种消息中间件的能力。…
第14章 Seata:分布式事务解决方案
微服务工程不可避免的会存在多个本地事务结合在一起的场景,要让这些本地事务同时提交、同时回滚,就变成了分布式事务。Alibaba Seata 是目前企业级中最流行、应用最广泛的分布式事务解决方案,我们的课程中也将会引入 Seata 来解决分布式事务问题。…
第15章 订单微服务
订单微服务是电商工程的核心微服务,这其中会引入微服务通信、微服务容错、消息驱动与分布式事务,它会将电商工程中所有的微服务都串联在一起,共同完成用户的下单操作。所以,在实现这个微服务时,要认真考虑这里面要解决的问题,以及使用到的技术、工具和组件。…
第16章 物流微服务
物流微服务是订单微服务的下游服务,它们之间通过 Stream 结合消息中间件的模式构建了通信通道。创建订单完毕之后,由物流微服务异步生成物流单,并可以在此基础上做更多的扩展,例如:推送消息、构造物流清单等等。
第17章 基于 SpringCloud Alibaba Sentinel 实现网关动态限流
支持高并发的系统一定要做好限流的工作,微服务架构下,当然是把限流的功能提前到网关层面,Alibaba Sentinel 目前被广泛的应用在服务限流的实现上,我同时会将 Gateway、Sentinel、Nacos 结合在一起,实现网关动态限流。
第18章 微服务工程部署与整体可用性验证
工程代码编写完毕之后,就需要考虑工程部署的问题了,课程中会提供部署脚本实现自动化部署和管理,并解释说明工程部署的方案与目的。最后,对完成部署的微服务工程做整体的可用性验证,测试其功能正确、可用。
第19章 课程总结
这一章我将会梳理课程的所有知识点,对 SpringCloud 和 SpringCloud Alibaba 做总结说明。同时,再去铺开微服务工程的几类问题,并说明这些问题的解决方案、解决思想。

下载权限

查看
  • 免费下载
    评论后下载
    登录后下载

  • {{attr.name}}:
您当前的等级为
您有每天免费下载所有资源次的特权,今日剩余 已取得下载权限

为TA充电
人已赞赏
java教程

java网络架构 Svn+Maven+Nginx+Dubbo+Redis

2021-8-30 18:07:35

java教程

涨见识!JVM性能监控与调优实战课程 一线大厂讲师的JVM优化案例与解决方案课程

2021-9-7 23:38:29

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索