打造仿猫眼项目 以Dubbo为核心解锁微服务【视频教程】
第1章 微服务入门
本章中将概要介绍微服务与传统应用之间的差异与实现优势,以便于帮助同学们更加清晰微服务在项目开发中的定位。
- 1-1 课程导学试看
- 1-2 ***学前必读***(助你平稳踩坑,畅学无忧,课程学习与解决问题指南)
- 1-3 传统应用带来的问题
- 1-4 微服务概述
第2章 演示环境构建
本章中将通过一系列的基本演示,让同学们可以对Dubbo有一个快速直观的认识。当前项目中构建了目前Dubbo的两种主流兼容框架Spring和Springboot,并且都进行了Dubbo集成,以便于适应多种需求下的应对使用。
- 2-1 基础环境构建介绍
- 2-2 Spring基础环境构建
- 2-3 Spring的直连提供者
- 2-4 SpringBoot基础环境构建
- 2-5 SpringBoot直连提供者演示
- 2-6 注册中心概述
- 2-7 Zookeeper-windows安装
- 2-8 Spring集成注册中心
- 2-9 Springboot集成注册中心
- 2-10 基于Apache Dubbo结合Springboot构建开发环境
- 2-11 常见问题集锦
- 2-12 阶段任务
第3章 业务基础环境构建
经过上一章节的演示,让大家了解到Dubbo与Spring、Springboot集成和基本使用,本章中会将Dubbo与Guns进行集成,构建一个业务系统的基本环境,同时针对API网关进行了一个简单的描述和引入,为后续章节打下铺垫。考虑到部分童鞋可能没有接触过Guns,可以先参考课程最后的《附录篇:Guns基础入门》章节做初步了解。 ...
- 3-1 API网关介绍
- 3-2 Guns环境构建
- 3-3 API网关模块构建测试
- 3-4 API网关集成Dubbo
- 3-5 抽离业务API
- 3-6 理解Dubbo的调用流程与Dubbo多协议解析
第4章 Dubbo基本特性:用户模块开发
本章中将基于Springboot和Dubbo的结合,进行用户模块业务开发,并且会学习注册发现、负载均衡、路由策略等多项Dubbo核心特性。除此以外,会进一步了解API网关与业务模块的结合和开发。
- 4-1 用户模块概要介绍
- 4-2 接口文档和sql语句见面会
- 4-3 用户服务与网关交互
- 4-4 基于Springboot配置忽略列表
- 4-5 基于用户业务的API修改
- 4-6 修改JWT申请的返回报文
- 4-7 Threadlocal保存用户信息
- 4-8 JWT修改测试和总结
- 4-9 用户模块-DAO层代码生成
- 4-10 用户模块-注册业务实现
- 4-11 用户模块-登陆和用户名验证实现
- 4-12 用户模块-查询用户信息
- 4-13 用户模块-修改用户信息实现
- 4-14 网关模块-注册功能实现
- 4-15 网关模块-用户名检查和退出功能实现
- 4-16 网关模块-用户信息相关功能实现
- 4-17 用户名验证接口测试
- 4-18 用户注册接口测试
- 4-19 用户信息查询接口测试
- 4-20 用户信息修改接口测试
- 4-21 Dubbo特性-启动检查
- 4-22 Dubbo特性-负载均衡
- 4-23 Dubbo特性-多协议支持
- 4-24 章节总结归纳
第5章 Dubbo服务开发:影片模块开发
本章中将结合影片模块的开发,帮助同学们进一步了解Gateway的功能聚合的开发、异步调用等Dubbo特性;同时,会引入Lombok框架,并将详细讲解Dubbo的通信、线程模型等特性,以及相应的业务实现。
- 5-1 影片模块介绍
- 5-2 影片模块创建
- 5-3 初识API网关特性 - 功能聚合
- 5-4 Lombok框架引入和使用介绍
- 5-5 首页实现 - VO对象创建
- 5-6 首页实现 - Api接口定义
- 5-7 电影模块-数据层生成
- 5-8 首页实现 - Banner数据层
- 5-9 首页实现 - 影片查询
- 5-10 首页实现 - 其他查询
- 5-11 首页实现 - 数据层补充及API整合
- 5-12 首页实现 - 测试及ResponseVO调整
- 5-13 条件列表实现 - 表现层及交互实体实现
- 5-14 条件列表实现 - 结构建立
- 5-15 条件列表实现 - 数据层实现 (1)
- 5-16 条件列表实现 - 数据层实现(2)
- 5-17 条件列表实现 - 表现层业务讲解
- 5-18 条件列表实现 - 表现层业务实现(1)
- 5-19 条件列表实现 - 表现层业务实现(2)
- 5-20 条件列表实现 - 表现层业务实现(3)
- 5-21 影片查询功能实现 - 思路介绍
- 5-22 影片查询功能实现 - Service层实现
- 5-23 影片查询功能实现 - 数据层实现(1)
- 5-24 影片查询功能实现 - 数据层实现(2)
- 5-25 影片查询功能实现 - 数据层实现(3)
- 5-26 影片查询功能实现 - 网关实现
- 5-27 影片查询功能实现 - 单元测试
- 5-28 影片详情查询 - 业务介绍
- 5-29 影片详情查询第一部分 - API定义
- 5-30 影片详情查询第一部分 - 自定义SQL实现(1)
- 5-31 影片详情查询第一部分 - 自定义SQL实现(2)
- 5-32 影片详情查询第一部分 - 自定义SQL实现(3)
- 5-33 影片详情查询第一部分 - 网关实现
- 5-34 影片详情查询第二部分 - API定义
- 5-35 影片详情查询第二部分 -数据层实现(1)
- 5-36 影片详情查询第二部分 - 数据层实现(2)
- 5-37 影片详情查询 - 网关实现
- 5-38 业务结果测试
- 5-39 Dubbo特性之异步调用讲解试看
- 5-40 Spring版Dubbo异步调用演示
- 5-41 业务系统集成Dubbo异步调用(1)
- 5-42 业务系统集成Dubbo异步调用实现(2)
- 5-43 影片模块总结
第6章 Dubbo服务开发:影院模块开发
本章中将完成影院模块开发,保证整个业务的连贯性,同时将详细讲解包括并发控制、连接控制、事件通知和结果缓存等Dubbo特性,并结合相应的业务进行实现。
- 6-1 章节导读和表结构介绍
- 6-2 影院模块构建
- 6-3 影院模块服务网关结构构建
- 6-4 接口文档与界面之间的对应关系
- 6-5 分析服务网关的数据需求
- 6-6 API实体对象创建
- 6-7 分析API所需接口
- 6-8 设计API接口
- 6-9 Cinema模块数据层生成以及逻辑层构建
- 6-10 Cinema模块实现 - 影院列表查询实现
- 6-11 Cinema模块实现 - 查询条件列表实现
- 6-12 Cinema模块实现 - 根据编号查询影院信息实现
- 6-13 Cinema模块实现 - 查询某影院下所有电影和场次
- 6-14 Cinema模块实现 - 查询特定场次相关信息
- 6-15 Cinema模块实现 - 查询特定场次的影片信息
- 6-16 Cinema网关实现 - 获取影院列表
- 6-17 cinema网关实现 - 获取影院查询条件
- 6-18 Cinema网关实现 - 获取所有上映场次信息
- 6-19 Cinema网关实现 - 获取特定场次信息
- 6-20 Cinema模块测试以及全局异常处理
- 6-21 Dubbo特性之结果缓存
- 6-22 Dubbo特性之并发与连接控制
- 6-23 Spring环境演示
- 6-24 Springboot环境演示
第7章 Dubbo服务开发:订单模块开发
本章中将会讲解订单模块,作为本系统中的重中之重,这个模块的讲解中也会涉及到几个在微服务领域中比较重要的点,包括分布式事务、服务熔断降级、分表分库以后的应对思路和限流的实现等等相关内容。在业务实现讲解的同时,本章会涉及到的Dubbo知识点主要包括:服务分组、版本控制、访问日志等。...
- 7-1 订单模块介绍
- 7-2 window ftp服务器构建
- 7-3 订单模块环境构建
- 7-4 订单模块服务网关构建
- 7-5 订单模块接口分析
- 7-6 订单模块API定义
- 7-7 订单模块 - 数据层生成
- 7-8 订单模块 - 获取座位地址实现
- 7-9 订单模块 - FTP工具实现
- 7-10 Springboot配置以及Springboot测试讲解
- 7-11 订单模块 - 判断ID传入是否正确实现
- 7-12 订单模块 - 判断是否已售座位
- 7-13 订单模块 - 创建新订单
- 7-14 订单信息查询SQL开发
- 7-15 订单信息查询 - 业务层实现
- 7-16 订单模块 - 获取所有已售座位业务实现
- 7-17 订单模块 - 影院模块获取已售座位业务实现及调试
- 7-18 订单模块 - 购票API网关实现
- 7-19 订单模块 - 获取当前用户订单信息
- 7-20 订单模块 - 购票业务测试以及相关内容修改
- 7-21 订单模块 - 获取订单信息接口测试
- 7-22 订单业务之后的问题总结
- 7-23 分库分表业务介绍
- 7-24 Dubbo特性之分组
- 7-25 Dubbo特性之分组聚合
- 7-26 Dubbo特性之版本控制
- 7-27 业务改造 - 分组合并
- 7-28 分组合并结果测试
- 7-29 限流算法介绍
- 7-30 限流算法集成业务系统
- 7-31 熔断器Hystrix流程介绍
- 7-32 熔断器效果演示
- 7-33 解决熔断器下用户无法获取问题
- 7-34 订单模块总结
第8章 Dubbo服务开发:支付模块开发
本章将带领大家实现对接支付宝的SDK,并且使用其沙箱环境完成整套支付动作。同时我们会引入一些与支付业务相关的几个Dubbo特性,比如隐式参数、参数验证和本地伪装,为支付业务保驾护航
- 8-1 支付业务介绍
- 8-2 当面付实例工程构建
- 8-3 当面付功能演示
- 8-4 支付模块构建
- 8-5 支付模块网关与API设计
- 8-6 订单模块适配改造
- 8-7 支付模块实现 - 获取二维码地址
- 8-8 支付模块实现 - 查询订单支付状态
- 8-9 支付模块 - 服务网关实现
- 8-10 支付模块 - 全流程测试
- 8-11 二维码上传FTP实现
- 8-12 Dubbo特性之本地存根介绍
- 8-13 本地存根演示和使用场景介绍
- 8-14 Dubbo特性之本地伪装介绍
- 8-15 本地伪装演示
- 8-16 本地伪装结合业务实现以及注意事项
- 8-17 隐式参数传递讲解与实现
- 8-18 课程总结
第9章 分布式事务
微服务的幂等性是微服务的核心之一,本章中将主要讲解分布式事务的产生原因、解决方案;同时会引入柔性补偿性事务和传统事务的解决方案。最后,我们会引入两种业务场景,分别讲解补偿式事务与两段式事务提交之间的优劣势和选择的前提。...
- 9-1 章节介绍
- 9-2 事务简介
- 9-3 分布式事务介绍
- 9-4 分布式事务实现思路介绍
- 9-5 两段式和三段式事务介绍
- 9-6 基于XA的分布式事务介绍
- 9-7 基于消息的最终一致性方案介绍
- 9-8 TCC柔性补偿式事务
- 9-9 两种分布式事务优劣势比较
- 9-10 主流分布式事务框架介绍
- 9-11 TCC-Transaction环境构建
- 9-12 HTTP案例部署展示
- 9-13 Dubbo案例部署展示
- 9-14 子事务红包模块解读
- 9-15 主事务订单模块解读
- 9-16 StringBoot环境准备
- 9-17 基础环境配置详解
- 9-18 流程演示以及jar包调整
- 9-19 订单业务模拟分布式事务
- 9-20 订单业务结果展示
- 9-21 TCC框架现象带来的一些思考
- 9-22 TCC框架事务存储器解析
- 9-23 Compensable拦截器讲解(上)试看
- 9-24 Compensable拦截器讲解(下)
- 9-25 Resource拦截器讲解
- 9-26 事务job讲解
- 9-27 分布式事务章节总结
第10章 服务监控
Dubbo的服务链路监控是服务架构里比较重要的地方之一,同时也是面试里经常会被问到的点,在这里将会引入zipkin+brave的形式解决全链路监控的问题
- 10-1 章节导读
- 10-2 Dubbo Monitor介绍
- 10-3 Dubbo-Monitor演示
- 10-4 Dubbo-admin介绍
- 10-5 Dubbo-admin安装部署
- 10-6 Dubbo-admin演示01
- 10-7 Dubbo-admin演示02
- 10-8 Dubbo-admin演示03
- 10-9 Dubbo-admin演示04
- 10-10 链路监控介绍
- 10-11 Dubbo特性之Filter介绍
- 10-12 Spring环境演示Filter
- 10-13 Springboot环境演示Filter
- 10-14 Zipkin Spring环境演示
- 10-15 业务系统集成Zipkin 01
- 10-16 业务系统集成Zipkin02
- 10-17 运行环境介绍
- 10-18 本地虚拟机安装
- 10-19 阿里云申请ECS服务器
- 10-20 阿里云域名注册
- 10-21 虚拟机初始化以及MySQL安装01
- 10-22 MySQL安装02
- 10-23 远程命令行工具安装与使用
- 10-24 VSFtp安装部署
- 10-25 JDK和Zookeeper安装
- 10-26 数据初始化与工程打包
- 10-27 微服务独立运行
- 10-28 Openresty安装部署
- 10-29 Openresty反向代理配置
- 10-30 NodeJS安装
- 10-31 整体效果演示
- 10-32 构建前端Docker镜像
- 10-33 常见问题集锦
- 10-34 Docker基本概念科普
- 10-35 Docker安装之window篇
- 10-36 Docker安装之CentOS篇
第11章 微服务面试总结
讲师本人使用微服务已经很多年,在本章会总结和梳理市面上经常会遇到的Dubbo相关的微服务问题,尤其是架构设计层面上的问题,为大家的顺利求职保驾护航。
- 11-1 章节介绍
- 11-2 Dubbo结构图和常识讲解
- 11-3 服务治理讲解
- 11-4 服务网关讲解
- 11-5 分布式事务
- 11-6 服务幂等性
- 11-7 限流方案介绍
- 11-8 自动化运维部署介绍
- 11-9 总结
第12章 附录篇:guns基础入门
Guns本身并没有什么神秘的东西,只是Springboot+Mybatis-plus的整合,为便于不太了解guns的同学能快速入门,此处将免费课中的guns基础使用课程附赠添加到课程中,方便同学们查阅。
- 12-1 Guns框架介绍
- 12-2 guns框架包结构介绍
- 12-3 导入数据文件
- 12-4 eclipse部署和启动guns
- 12-5 IDEA部署和导入guns
- 12-6 Guns开发准备
- 12-7 Guns代码生成演示
- 12-8 Guns查询全部功能实现
- 12-9 Guns根据条件查询功能实现
- 12-10 Guns新增功能演示
- 12-11 Guns修改功能演示
- 12-12 Guns删除功能演示