欢迎访问李兴华编程训练营服务平台!
图书资源
Java
Python
数据库
前端
操作系统
图书资源
官方客服微信

SpringCloud开发实战

小编 2022-09-27 18:09:56

05_SpringCloud开发实战.jpg


SpringCloud是Spring生态圈之中一项重要的开发技术套件,其所有的设计全部围绕着RESTful数据传输,并且基于RESTful设计实现了良好的结构化管理。在SpringCloud长期发展过程中形成了两套不同的组合套件,分别是SpringCloudNetflix以及SpringCloudAlibaba,而随着Netflix组件的逐渐闭源化管理,本套课程将以SpringCloudAlibaba套件为主进行全面且丰富的知识体系讲解,同时考虑到了实际应用以及就业环境的需要,又对SpringCloudNetflix中的核心组件进行了详细分析,在本次课程中所涉及到的知识内容包括如下几项:

1、 完整的分析了业务中心技术的发展历史,从业务中心搭建的意义到RPC技术,再到WebService技术的发展历程;

2、 基于Gradle构建工具实现SpringCloud项目开发;

3、 基于SpringBoot实现了RESTful基础架构的搭建,并详细的讲解了Swagger文档工具的作用与实例应用;

4、 基于最新的Nacos 2.x讲解了Nacos注册中心的搭建与使用,并基于Nginx与HAProxy实现了集群服务管理以及gRPC注册代理支持;

5、 详细解释了Nacos中基于AP与CP模式的使用特点,并基于集群环境实现了模式的动态切换处理;

6、 为便于读者理解微服务的注册管理,使用了NacosClient讲解了Nacos服务实例管理以及配置项的管理操作机制;

7、 讲解了Netflix套件中提供的Ribbon服务组件,并通过其实现了REST服务的负载均衡调用处理,同时通过Ribbon源码详细解释了Ribbon的工作原理;

8、 讲解了Feign组件的使用,并基于Feign组件实现了远程接口的映射处理,同时对Feign源代码进行分析,总结了其工作流程;

9、 讲解了Netflix套件中提供的Hystrix组件,并结合了Actuator实现了微服务的性能监控管理;

10、 微服务中为了实现合理的流量保护,提供了Sentinel限流工具,本课程完整的讲解了Sentinel的限流实现、原理分析以及配置规则持久化处理操作;

11、 基于SpringCloudGateway实现了微服务路由管理,并详细的分析了路由谓词工厂、过滤器以及全局过滤器的使用;

12、 完整的分析了SpringCloudGateway的运行流程,并通过其源代码解释了工作原理;

13、 结合Prometheus与Grafana实现了SpringCloudGateway服务监控;

14、 通过实例讲解了SpringCloudGateway所提供的动态路由规则配置;

15、 基于JWT实现了微服务完整的认证与授权管理机制;

16、 结合了SpringBootAdmin实现了微服务的监控与管理机制;

17、 实战分析了Apache RocketMQ消息组件的使用,并通过源码详细解释了其完整的工作原理;

18、 结合RocketMQ提供的事务消息处理机制并结合SETA实现了分布式事务管理与配置;

19、 基于RocketMQ讲解了SpringCloudStream工作机制,并且通过其操作实现了SpringCloudConfig配置更新处理;

20、 讲解了SpringCloud微服务监控机制,并通过实战的形式讲解了Zipkin、SkyWalking、Sentry组件的使用。



05_SpringCloud开发实战 https://www.aliyundrive.com/s/PZ8aNJfjWMj 点击链接保存,或者复制本段内容,打开「阿里云盘」APP ,无需下载极速在线查看,视频原画倍速播放。


图书出版海报.jpg


0101_【理解】业务中心 业务中心是项目设计开发的灵魂,从最初的MVC设计模式一直到现在的微服务设计架构,全部都是围绕着业务中心所展开的,在本课程中将会为读者详细的阐述业务中心的基本作用。

0102_【理解】RPC技术 良好的项目架构中业务中心是一个独立的运行单元,由于符合C/S网络架构,所以就需要有一个技术标准来实现调用,本课程为读者讲解了RPC技术的相关概念。

0103_【理解】EJB技术 EJB是由SUN推出的适合于Java搭建业务中心的核心技术,同时也是现代Java框架设计与开发理论的奠基者,本课程为读者分析了EJB技术的主要组成结构,并且分析了RMI与EJB技术的关联,以及EJB技术实现的缺陷。

0104_【理解】WebService 不同平台的整合需要公共的实现标准,XML的出现提供了通讯标准的统一,随之提出了WebService技术,本课程为读者讲解了WebService技术的主要特点以及缺陷。

0105_【掌握】RESTful架构 RESTful是一种更加轻量级的数据传输结构,可以直接基于HTTP协议完成分布式开发,利用RESTful架构实现的业务中心可以提供高效与简洁的运行环境,本课程为读者分析了RESTful架构的产生背景以及实现说明。

0106_【掌握】SpringCloudNetflix技术架构 SpringCloud早期主要基于Netflix组件实现了REST微服务的管理,在本课程中为读者讲解了SpringCloudNetflix架构的组成架构,并分析了各个主要组件的作用。

0107_【掌握】SpringCloudAlibaba技术架构 SpringCloudAlibaba是现在国内最为流行的SpringCloud解决方案,在本课程中为读者宏观的讲解了SpringCloudAlibaba的技术架构,并分析了其与Netflix技术的区别。


0201_【掌握】RESTful实现简介 RESTful是微服务实现的理论基础,在本次的课程中将为读者介绍本次要实现的服务端的功能,以及为完成本项目中所需要使用到的实现技术。

0202_【掌握】构建SpringCloud项目 SpringCloud的项目搭建将直接通过Gradle工具完成,在本课程中利用实际的操作演示,直接基于IDEA开发工具在基础的SpringBoot整合之上搭建了SpringCloud项目。

0203_【掌握】REST公共模块 SpringCloud项目属于RPC应用,这样就需要定义服务提供者与消费者之间所可能使用到的公共组件,在本次课程中为读者讲解了数据传输类的作用,并且基于Spring所提供的BeanUtils类进行了集合数据拷贝的功能扩展。

0204_【掌握】微服务提供者 微服务的提供者需要实现公共的业务接口,同时也需要对外隐藏接口的实现细节,在本次的课程中由于是围绕数据库展开的业务操作,所以基于MyBatisPlus组件实现了数据库的CRUD处理开发操作。

0205_【掌握】Postman接口测试 微服务创建完成后为了保证其对应的REST接口可以提供正确的服务,往往会进行接口的访问测试以及压力测试,而这些功能就可以通过Postman工具来实现,本课程为读者讲解了Postman的下载、安装以及基本使用。

0206_【掌握】微服务消费者 SpringCloud微服务需要通过SpringBoot来进行调用,本课程将创建一个消费端应用,并通过RestTemplate类所提供的方法实现远程服务调用。

0207_【掌握】HTTP请求拦截 在客户端使用Ribbon进行服务调用时,可以对服务的请求进行拦截处理,在本课程中为读者讲解了ClientHttpRequestInterceptor拦截接口的使用,并且通过实例分析了Ribbon拦截器的具体应用。

0208_【理解】Swagger接口描述 为了便于使用者进行微服务接口的调用,那么必然需要有详细且完善的接口说明文档,为了便于文档的开发与维护,Spring引入了Swagger项目,在本课程中为读者讲解了接口文档的作用,以及Swagger与SpringBoot的快速整合应用。

0209_【理解】REST接口描述 Swagger给出的接口描述文档可以由用户进行更加详细的设置,在本课程中将基于Swagger配置以Swagger注解在代码中实现接口的完整描述。

0210_【理解】Swagger安全配置 Swagger文档最终需要暴露给远程客户端,而为了保护文档的安全应该进行有效的安全认证管理,本课程结合SpringSecurity开发框架采用静态认证信息的方式实现了Swagger的安全保护。


0301_【掌握】注册中心简介 微服务的设计需要引入大量的服务节点,而为了便于这些节点的管理与维护就需要采用注册中心,本课程中为读者讲解了微服务模型管理中的问题以及注册中心的作用。

0302_【掌握】Nacos技术架构 Nacos是阿里巴巴推出的重要服务组件,在本课程中为读者讲解了Nacos的服务架构整体组成,同时分析了Nacos中实现CP机制的Distro以及RAFT算法作用。

0303_【掌握】获取Nacos应用组件 Nacos基于Maven开发,同时又是一个开源项目,这样就可以直接依据Nacos源代码进行服务编译,本课程通过实例演示了Nacos组件编译以及Windows下的组件使用。

0304_【掌握】Linux部署Nacos服务 为了保证注册中心的稳定运行,一般会将其部署在Linux系统之中,在本课程中将基于虚拟机实现Linux系统的运行以及Nacos服务的部署。

0305_【掌握】Nacos整合MySQL存储 Nacos依靠关系型数据库实现配置数据的存储与同步,在本课程中为读者讲解了Nacos与MySQL数据库的存储。

0306_【掌握】Nacos领域模型 Nacos为了便于注册与配置数据的管理,提出了完整的领域模型,在本课程中将为读者讲解Nacos领域模型中的各个组成,并分析了其设计的目的。

0307_【理解】配置数据管理 Nacos支持有配置数据的管理支持,可以利用Nacos所给出的原生API实现配置数据的发布、修改、删除以及监听的相关操作,在本课程中为读者讲解了如何基于Nacos客户端工具包实现Nacos配置项的管理。

0308_【理解】实例数据管理 Nacos提供了动态实例管理支持,这样可以及时的获取到每一个实例节点的状态,在本课程中将模拟集群节点的应用环境,实现多个节点实例的配置,并且通过具体的操作讲解Nacos节点配置监听的实现。

0309_【掌握】REST访问配置 为了便于更多的平台与Nacos整合,在Nacos中提供了REST接口,可以直接基于HTTP协议的形式实现Nacos数据操作,本课程结合了Nacos提供的官方文档手册,并通过具体的实例演示了常用接口的使用。

0310_【掌握】微服务注册 SpringCloud中的微服务需要向Nacos中进行统一的注册管理,本课程通过具体的操作修改了部门微服务并实现了Nacos服务的注册操作。

0311_【掌握】配置Nacos注册信息 Nacos为了规范化服务管理,提供了完整的领域模型,所以微服务的注册与发布也需要进行归类管理,本课程将对部门微服务进一步改造,实现注册数据的有效管理

0312_【掌握】Nacos安全注册 Nacos是整个微服务的核心组件,里面保存有重要的服务实例数据,所以必须保证安全的微服务注册,本课程讲解了Nacos安全配置启用以及微服务的安全注册。

0313_【理解】Nacos自动配置 Nacos与微服务的整合依赖于自动装配的实现机制,本课程通过nacos-discover依赖库介绍了与之相关的自动装配类的功能。

0314_【理解】NacosConfigBootstrapConfiguration Nacos客户端可以通过ConfigService接口实现Nacos领域模型的操作,而此接口对象的实例创建是由spring-cloud-starter-alibaba-nacos-config依赖所提供的自动配置类实现的,本课程为读者分析了NacosConfigBootstrapConfiguration配置类的源代码实现。

0315_【理解】@EnableDiscoveryClient注解 服务与注册中心的整合需要通过@EnableDiscoveryClient注解完成,在本课程中为读者分析了该注解的组成结构,并且根据其组成结构分析了导入处理类的实现机制。

0316_【理解】NacosServiceRegistryAutoConfiguration SpringCloud为了便于服务的注册管理,提供了统一的处理标准,在本课程中将通过Nacos提供的NacosServiceRegistryAutoConfiguration类的源代码分析服务注册流程。

0317_【理解】NacosDiscoveryAutoConfiguration Nacos服务除了注册支持之外还包含有发现处理,所以在SpringCloud项目时就提供了NacosDiscoveryAutoConfiguration发现自动配置类,本课程通过源代码为读者分析了NacosDiscoveryAutoConfiguration类的实现结构,并讲解了NacosServiceDiscovery工具类中所提供的服务发现方法的作用。

0401_【掌握】微服务集群简介 为了提高服务的处理性能,生产环境中会大量采用集群设计,在本课程中为读者分析了微服务集群设计的意义,同时讲解了本次要搭建的服务集群架构。

0402_【掌握】Nacos服务集群 Nacos内部直接提供了服务集群的配置支持,在本课程中将通过虚拟机创建三个Nacos服务节点,并通过Nacos配置实现了三个节点的集群关联。

0403_【掌握】Nacos集群代理 Nacos提供的集群节点,而所有的节点需要一个统一的地址才可以对外提供集群服务,在本课程中将通过Nginx实现Nacos集群代理配置。

0404_【掌握】gRPC注册服务代理 为便于服务注册与消费发现处理,可以对gRPC的代理进行统一管理,在本课程中为读者讲解了如何基于HAProxy代理组件实现Nacos节点访问配置。

0405_【掌握】微服务集群注册 注册中心集群处理后就可以保存更多的微服务注册信息,本课程将基于已有的部门微服务进行改造,并实现了微服务集群的注册。

0406_【掌握】客户端服务访问 Nacos除了实现了微服务数据的管理之外,也提供有客户端的服务发现管理支持,这样就可以通过服务的信息配置找到相关的服务节点进行调用,在本课程之中将实现消费端的服务注册以及服务调用处理。

0407_【掌握】CP与AP模式切换 Nacos集群提供了数据一致性的同步管理,在本课程中为读者分析了Nacos对于CAP原则的实现,同时分析了CP与AP实现算法,并对与之相关的源代码进行了分析。

0408_【掌握】Ribbon服务调用 为了进一步解决消费端的服务调用问题,在实际的项目开发中,可以基于Ribbon组件简化客户端的调用难度,在本课程中为读者介绍了Ribbon的主要作用,并且通过具体的操作实现了Ribbon组件的快速应用。

0409_【理解】ServerList实例列表 消费端通过Ribbon实现的微服务调用中需要及时进行Nacos数据更新,所以提供了ServerList内容保存接口,本课程为读者分析了ServerList接口的主要使用,同时基于NacosServerList类的源代码进行了Nacos服务数据获取分析。

0410_【理解】ILoadBalancer负载均衡器 在进行微服务集群构建后,通过Ribbon可以获取到全部的服务实例数据,那么此时就需要通过一定的算法进行调度,这样就可以避免某一个节点服务量过大的问题出现,在本课程中为读者分析了Ribbon负载均衡器的接口标准,同时讲解了内部负载均衡器的实现与配置。

0411_【理解】ServerListUpdater服务列表更新 为了进行有效的微服务实例数据维护,在Ribbon提供了服务列表更新接口,在本课程中将为读者分析ServerListUpdater接口的使用,以及服务更新的操作监听处理。

0412_【理解】ServerListFilter实例过滤器 服务列表数据可以进行有效过滤处理,这样可以基于一些特定的条件实现实例的优先调用,本课程为读者实例讲解了ServerListFilter接口的使用,并通过源码分析了可用区选用阈值以及可用区切换原理。

0413_【掌握】IPing存活检查 为了便于节点存活状态的检查,在Ribbon中提供了IPing接口,本课程为读者分析了IPing接口的主要组成结构,同时通过源代码方式分析了Ping操作的伪实现意义。

0414_【掌握】IRule负载均衡算法 Ribbon可以帮助用户隐藏注册中心的实例发现处理,同时又提供有一系列的负载均衡算法,帮助用户更合理的实现微服务集群调用,在本课程中将为读者讲解Ribbon所提供的负载均衡策略以及策略的使用配置。

0415_【掌握】Ribbon负载均衡策略 Ribbon通过其自身完善的负载均衡策略可以实现高效的微服务调用管理,在本课程中为读者讲解了完整的Ribbon负载均衡策略配置实现。

0416_【理解】Ribbon执行分析 Ribbon是基于Starter组件的形式自动装配到系统之中的,在本课程中将为读者分析Ribbon配置加载,并结合ILoadBalancer、ServerList、IRule等及核心处理逻辑分析了Ribbon源代码中的启动流程。

0417_【理解】Nacos权重优先调用 在基于Nacos服务实例注册时,提供了权重的配置支持,可以基于权重实现不同实例优先级的调用,在本课程中为读者讲解了微服务权重的作用以及具体实现。

0418_【理解】Nacos集群优先调度 在Nacos领域模型中可以基于集群实现不同机房服务节点的管理,这样也可以基于集群名称实现消费端优先调用,本课程为读者分析了集群调用的意义,并通过代码进行了该负载均衡算法的实现。

0419_【理解】元数据优先调度 微服务的消费端可能会有多种,而为了便于微服务的版本维护,可以基于元数据的方式进行调度配置,在本课程中为读者讲解了版本优先调度的意义,并通过自定义的负载均衡算法实现了同一版本微服务的优先调度实现。

0420_【掌握】Feign接口转换 为了便于微服务的调用管理,在SpringCloud套件中提供了Feign组件,利用此组件可以实现远程REST接口与Java接口的映射访问,本课程通过一个完整的实例为读者讲解了Feign组件的基本使用以及服务调用操作。

0421_【掌握】Feign转换日志 Feign在进行转换时实际上依然采用了HTTP请求与响应处理机制,而为了便于使用者观察,在Feign组件提供了日志的支持,本课程为读者讲解了如何配置Feign组件的转换类,并分析了日志的组成结构。

0422_【掌握】Feign连接池 Feign在进行服务通讯时,基于HTTP协议完成,而为了得到最佳的处理性能,需要在项目中进行服务的配置,本课程为读者讲解了Feign的相关配置以及实现意义。

0423_【理解】数据压缩传输 为了可以高效的实现数据的传输处理,在Feign组件中提供了数据压缩的处理支持,本课程为读者讲解了如何在Feign组件中实现HTTP数据压缩传输。

0424_【理解】Feign工作原理 Feign组件为了便于接口映射管理,提供了一系列的处理步骤,本课程为读者讲解了Feign组件的工作原理,并且通过源代码分析了原生feign组件的构建,并且浅析了在SpringCloud组件中Feign组件的构建管理。

0425_【理解】FeignAutoConfiguration 本程序通过Starter组件的执行流程分析了FeignAutoConfiguration配置类的组成,并依据组成分析了Feign中的动态代理生成机制以及HTTP客户端的使用选择。

0426_【理解】FeignRibbonClientAutoConfiguration Feign工作在消费端,所以在设计时充分的利用了Ribbon处理机制实现服务端负载均衡策略,本课程为读者分析了FeignRibbonClientAutoConfiguration配置类的源代码结构,以及与Ribbon标准之间的关联。

0427_【了解】FeignLoadBalancerAutoConfiguration Feign组件内置了负载均衡器,同时在该负载均衡器中又需要提供稳定的服务调用,在本课程中为读者分析了FeignLoadBalancerAutoConfiguration自动装配类,同时分析了BlockingLoadBalancerClient阻塞负载均衡器的作用。

0428_【理解】FeignClientsRegistrar 在使用Feign组件时需要通过“@EnableFeignClients”和“@FeignClient”两个注解进行标记,而在Feign内部会自动进行扫描包的配置与Bean注册,在本课程中为读者分析了FeignClientsRegistrar类源代码的实现。

0429_【了解】Hystrix熔断机制 Hystrix是由Netflix提供的微服务熔断处理机制,在本课程中为读者分析了微服务调用链出现的雪崩效应,同时为读者讲解了Hystrix基本概念。

0430_【了解】Hystrix基本使用 为了便于SpringCloud的整合处理,专门提供了Hystrix服务整合组件,在本课程中通过具体的实例代码代码讲解了Hystrix中的失败处理支持。

0431_【了解】Feign失败回退 在进行服务调用时,都会通过Feign进行远程接口映射,所以在Feign中对Hystrix也有所支持,可以直接通过失败回退工厂类进行服务降级处理,本课程通过实例讲解了如何基于FeignClient实现失败回退处理。

0432_【了解】HystrixDashboard Hystrix除了提供了熔断机制外,还提供有Hystrix监控面板支持,在本课程中讲解了Hystrix微服务的开启以及服务面板应用的创建。

0433_【了解】Turbine聚合监控 为了进行微服务的监控统一管理,在SpringCloud中提供了Turbine组件,本课程为读者讲解了统一监控的意义,并讲解了Turbine的配置以及服务监控数据获取。

0434_【了解】Hystrix工作流程 Hystrix所有的操作都被封装在了HystrixCommand对象实例之中,如果要想清楚Hystri处理远离,就需要通过HystrixCommand类的源代码进行观察,在本课程中通过HystrixCommand类的继承结构以及核心方法分析了Hystrix的工作流程。

0435_【了解】HystrixAutoConfiguration Hystrix提供了自动装配处理,而在Hystrix整合时需要进行HystrixCommand切面配置以及度量配置,本课程通过HystrixAutoConfiguration类源代码以及对应的关联结构,进行了HystrixCommand流程分析。

0436_【了解】HystrixCircuitBreakerAutoConfiguration Hystrix中的断路器的启用是需要结合特定的阈值配置处理,而所有相关的属性配置是由HystrixCircuitBreakerAutoConfiguration类实现的,本课程为读者分析了断路器的自动配置类的作用。

0437_【了解】HystrixCircuitBreakerConfiguration HystrixCircuitBreakerConfiguration实现了与Hystrix断路器处理有关的Bean注册操作,本课程通过源代码为读者分析了此配置器的主要作用,同时分析了Hystrix中线程池与断路器之间的配置关联。

0438_【了解】HystrixCircuitBreaker 断路器的最终实现操作是由HystrixCircuitBreaker接口定义的,在本课程中通过断路器的源代码为读者分析了断路器的具体实现逻辑。

0439_【了解】AbstractCommand 为了保证资源调度稳定性,在Hystrix中提供了资源隔离机制,本课程基于此概念为读者分析了AbstractCommand类的核心源代码。

0501_【理解】Sentinel简介 SpringCloudAlibaba提供了良好的服务流控管理支持,在本课程中为读者讲解了访问流控的作用,并介绍了Sentinel组件的功能。

0502_【掌握】Sentinel控制台 Sentinel是一个开源组件可以直接通过GITHUB进行获取,本课程为读者讲解了Sentinel组件的下载、组件启动以及控制台使用。

0503_【掌握】Sentinel资源资源监控 项目中的微服务如果需要通过Sentinel进行限流保护,则需要引入相关依赖并进行配置实现,在本课程中通过具体的操作实例,为读者讲解了微服务的改造配置,并基于AOP切面实现了Sentinel流量数据的获取以及限流保护控制。

0504_【理解】实时监控数据 Sentinel为了其它平台的整合处理,提供了若干个REST数据接口,开发者可以直接通过该接口获取到Sentinel中流量数据、日志数据,本课程为读者介绍了这些数据接口的名称以及接口作用。

0505_【掌握】Sentinel限流保护 Sentinel进行微服务资源保护时,提供了多种限流规则,在本课程中为读者分析了基础限流规则的使用,并通过具体的操作演示了服务限流以及内置Fallback执行。

0506_【理解】自定义限流错误页 客户端请求一旦触发了Sentinel资源保护规则后都会进行错误信息的显示,开发者可以根据需要自定义错误信息,在本课程中将基于application.yml配置实现统一拦截错误的显示以及拦截路径的配置。

0507_【理解】Fallback失败回退 Sentinel在与SpringCloud整合时提供了默认的Fallback处理支持,但是考虑到定制化的开发要求,开发者也可以通过@SentinelResource注解实现自定义Fallback操作,本课程通过具体的实例讲解了自定义资源Fallback开发实现。

0508_【理解】BlockHandler 为了便于失败回退的统一管理,在Sentinel中提供了BlockHandler支持,本课程为读者讲解了BlockHandler操作的实现结构,并实现了与控制层方法的关联配置。

0509_【理解】热点规则 热点限流是一种Sentinel独有的限流机制,可以直接对接口方法中指定参数的访问进行限流处理,本课程为读者实例讲解了热点限流操作的实现以及相关配置类的定义。

0510_【掌握】授权规则 黑白名单是进行资源保护的重要组成形式,为此在Sentinel中提供了与之相关的授权规则,本课程为读者讲解了授权规则的设置并分析了RequestOriginParser接口的作用。

0511_【掌握】BlockExceptionHandler Sentinel针对于所有可能出现的限流处理都定义了专属的异常类型,并且提供了统一的BlockExceptionHandler处理接口,本课程通过实例讲解了异常统一处理的实现,并基于异常产生熔断机制验证了此规则的使用。

0512_【掌握】集群流控 集群是微服务保持运行高效与稳定的重要架构,在Sentinel设计中也充分的考虑到了集群应用环境,本课程为读者讲解了集群限流的实现机制,并通过具体的TokenServer搭建与配置实例分析了微服务集群管理的实现。

0513_【理解】Sentinel实现分析 Sentinel采用了注解与切面的形式实现了访问资源的流控统计,而在Sentinel中为了实现所有组件的方便接入提供了Entry类型,本课程为读者分析了Entry类型的主要作用,并基于Sentinel提供的Demo代码讲解了Entry与限流操作之间的关联。

0514_【理解】ResourceWrapper Sentinel是根据资源实现的保护规则配置,在本课程中为读者分析了Sentinel资源名称的获取以及Entry与ResourceWrapper之间的关联操作。

0515_【理解】ProcessorSlot Sentinel基于插槽与插槽链的结构实现了数据统计以及限流处理,在本课程中将通过SlorChainBuilder分析Sentinel的处理流程。

0516_【理解】Node Node是Sentinel实现数据统计的标准,并且会与Contexnt、Entry整合在一起应用,本课程为读者分析了Node接口的继承结构以及数据统计子类的使用。

0517_【理解】Context Context维护了整个调用链的元数据内容,是Entry创建与使用过程中必不可少的一个结构概念,本课程为读者讲解了Context概念,并分析了其对应的核心源代码。

0518_【理解】Sentinel规则持久化 Sentinel为了便于资源的维护提供了资源持久化的处理方案,在本课程中为读者分析了默认Sentinel内存配置所带来的问题,并介绍了Sentinel中的数据持久化实现方案。

0519_【掌握】流控规则持久化 流控规则是Sentinel最核心也是最为常用的一种保护机制,而为了服务限流管理的便利,需要对其进行持久化配置,本课程将基于一个独立的Nacos服务实现流控规则的配置以及读取处理。

0520_【掌握】限流规则解析 Sentinel支持有多种限流规则配置,而如果要想获取全部限流规则的JSON配置,则就必须进行源代码的解析处理,本课程通过源代码的组成结构,为读者分析了全部限流规则持久化配置项的定义结构。

0521_【理解】SentinelDashboard改造 Sentinel源代码中提供了持久化限流规则可视化的配置支持,在本课程中会通过实例的形式为读者演示开启持久化流控配置的实现。

0601_【掌握】SpringCloudGateway简介 为了更好的进行微服务的管理,同时便于用户的访问,在SpringCloud中提供了网关技术,本课程为读者讲解了SpringCloudGateway在微服务管理中的主要作用,并且分析了Zull与SpringCloudGateway的区别。

0602_【掌握】SpringCloudGateway编程起步 SpringCloudGateway基于WebFlux架构开发,可以提供更高效的服务处理性能,本课程为读者讲解了网关在微服务技术中的应用架构,同时基于SpringCloudGateway的基本配置实现了部门微服务的网关代理访问操作。

0603_【理解】消费端整合SpringCloudGateway 微服务架构中需要提供有SpringBoot消费端处理,本课程基于已有的Feign组件进行修改了,实现了网关调用与服务映射路径的配置。

0604_【掌握】静态路由配置 SpringCloudGateway中的路由除了自动根据微服务的名称进行匹配之外,还可以在application.yml中进行静态配置,本课程为读者讲解了单一资源的路由以及集群资源的路由访问配置。

0605_【掌握】RoutePredicateFactory简介 RoutePredicateFactory(又被称为路由谓词工厂)是在网关中实现服务代理转发的重要前提条件,本课程通过宏观的概念为读者分析了内置断言提供的配置模式,并且基于类结构的形式总结了路由谓词工厂的功能。

0606_【掌握】内置RoutePredicateFactory子类 在SpringCloudGateway项目中可以直接使用已有的内置路由谓词工厂类实现网关访问的执行判断,本课程通过实例为读者演示了内置路由谓词工厂类的使用。

0607_【理解】扩展RoutePredicateFactory子类 项目开发中存在有各类的特殊需要,所以对于网关的访问也有特殊的要求,为了便于用户功能的扩展,可以自定义RoutePredicateFactory子类,本课程通过一个时间点访问的应用讲解了自定义路由谓词工厂类的程序实现。

0608_【掌握】网关过滤简介 为了便于网关进行自动的请求或响应处理,在网关中提供了过滤工厂的概念,本课程通过实例为读者简要说明了过滤工厂的作用并通过一个简单的配置讲解了具体使用。

0609_【掌握】内置网关过滤工厂类 SpringCloudGateway内置了许多的过滤工厂类,在本课程中为读者分析了过滤工厂类的继承结构,并介绍了常用的内置过滤工厂类以及使用实例。

0610_【掌握】自定义过滤工厂 SpringCloudGateway支持用户自定义过滤工厂的配置实现,本次课程为读者讲解了自定义过滤工厂类实现的基本结构,并通过实例开发了一个日志记录的网关过滤器。

0611_【掌握】全局过滤器简介 全局过滤器是SpringCloudGateway中的重要组成结构,本课程为读者分析了全局过滤器的作用,同时基于Actuator为读者列举了全部内置的全局过滤器的名称,并简要的分析了其继承结构以及核心过滤器的作用。

0612_【掌握】自定义全局过滤器 SpringCloudGateway中根据全局过滤器实现请求转发的相关处理操作,本课程通过实例自定义了两个全局过滤器,并通过Order注解实现了过滤器实现顺序的配置。

0613_【掌握】ForwardRoutingFilter ForwardRoutingFitler是网关内部提供的一个内部的路由转发全局过滤器,本课程为读者分析了该过滤器的源代码结构,并且通过实例讲解了网关内的路由转发。

0614_【掌握】Netty全局路由 SpringCloudGateway可以直接实现实现指定资源的路由转发处理,而这一转发的操作是基于Netty实现的(NettyRoutingFilter与NettyWriteResponseFilter),本课程为读者分析了这两个内置全局过滤器的使用。

0615_【掌握】ReactiveLoadBalancerClientFilter SpringCloudGateway为了提高服务的处理性能,提供了Reactive响应式编程处理支持,本课程为读者分析了默认负载均衡转发的实现子类,并且基于依赖库以及yml配置开启了ReactiveLoadBalancerClientFilter全局过滤器操作。

0616_【掌握】GatewayMetricsFilter SpringCloudGateway内部提供了网关服务度量监控数据,本课程为读者展示了监控接口的开启,并且基于Prometheus与Grafana实现了数据采集与可视化监控显示。

0617_【理解】SpringCloudGateway自动装配类 SpringCloudGateway基于Starter自动装配模式进行服务处理,在本课程中为读者分析了网关请求代理的完整流程,并基于依赖库中的spring.factories介绍了装配类的作用。

0618_【理解】GatewayAutoConfiguration GatewayAutoConfiguration是网关服务配置的核心实现类,在本课程中通过源代码分析了该类的关联结构,并讲解了其与路由谓词工厂、网关过滤工厂之间的关联。

0619_【理解】RouteLocator 网关中需要保存大量的路由信息地址,而所有路由信息的获取可以通过RouteLocator接口完成,本课程分析了RouteLocator接口的继承结构,并通过启动类的源代码分析了这三个子类内部的关联。

0620_【理解】FilteringWebHandler 过滤器是网关进行请求和响应处理的关键一步,在本课程中通过网关自动配置类分析了FilteringWebHandler类的作用与过滤链的形成逻辑。

0621_【理解】RoutePredicateHandlerMapping 网关可以通过application.yml进行路由访问配置,而路由访问的断言匹配处理操作是由RoutePredicateHandlerMapping类实现的,本课程分析了该类的源代码实现。

0622_【掌握】动态路由简介 网关是微服务项目架构实现的核心技术,而网关的稳定运行将影响到整个微服务架构的状态,本课程为读者分析了静态网关实现的问题,并分析了动态网关配置实现。

0623_【掌握】动态路由模型 动态路由需要进行配置写入与更新事件发布,在本课程中将通过一个统一的路由操作类进行动态路由的增加、修改以及删除操作的实现。

0624_【掌握】动态路由简介 Nacos是SpringCloudAlibaba实现的核心所在,除了可以承担起服务注册与发现支持之外,还提供了配置数据的管理功能,在本课程中将继续使用Nacos实现网关配置数据持久化管理操作以实现配置的初始化加载与更新加载的实现。

0701_【了解】SpringCloud认证管理简介 为了有效的进行服务资源的保护,所以就需要进行统一的认证处理,本课程为读者分析了SpringCloud中的认证处理模式以及各自的特点。

0702_【掌握】JWT工具模块 由于在整个微服务架构中的各个服务节点都会使用到JWT进行处理,为了便于代码的统一管理,本次将创建一个公共的开发模块,并提供JWT的配置与数据处理支持。

0703_【掌握】Token认证服务 JWT是整个的微服务架构安全的核心所在,所以需要搭建统一的Token服务器,本课程为读者分析了Token服务器的作用,并通过具体的实例讲解了Token的创建。

0704_【掌握】JWT授权检测 考虑到安全性问题,微服务的资源提供者需要进行有效的授权检测,这样就可以有效的进行微服务管理,本课程将对已有的微服务进行改造,并对JWT公共模块进行了修改,基于注解与过滤器的形式实现了微服务资源的授权保护。

0705_【掌握】网关认证过滤 网关是微服务资源的整合关键,所以在进行资源代理转发前都必须进行有效的JWT认证,本课程将通过具体的实例对已有的网关应用进行修改,利用全局过滤器的形式实现了JWT数据结构的校验处理。

0706_【掌握】消费端获取JWT 微服务资源最终是通过消费端应用进行调用的,这样在进行资源调度时就必须进行Token数据的获取与传递,本课程将通过实例讲解如何通过CommandLineRunner进行Token获取,并利用Feign拦截器实现了Token数据的头信息传递操作。

0707_【掌握】SpringBootAdmin服务端 良好的微服务需要有效的监控管理,Spring官方提供了SpringBootAdmin管理工具,即可通过Actuator实现服务监控,本课程通过实例讲解了服务监控功能的启用。

0708_【掌握】SpringBootAdmin安全配置 监控服务可以获取全部微服务节点数据,这样就必须进行有效的安全保护,在本课程中会将SpringSecurity与SpringBootAdmin进行结合,实现了用户认证管理。

0709_【掌握】SpringBootAdmin客户端接入 SpringBootAdmin中的监控数据需要由各个微服务通过Actuator进行发送,这样就需要进行监控节点的整合,本课程对已有的微服务架构进行了修改,实现了控制台的服务状态监控以及统计信息的展示。

0710_【掌握】微服务离线警告 完善的服务运行离不开警报信息的配置,在SpringCloud集群架构中会存在有大量的微服务节点,如果某一个服务节点出现问题则应该立即通知管理员,这样就可以通过SpringBootAdmin提供的邮件整合服务进行警报信息的发送

0801_【掌握】RocketMQ简介 消息组件是在系统开发中较为常见的服务应用,本课程为读者宏观的讲解了消息组件 的主要作用,同时分析了常见的几款消息组件的特点与实际应用场景。

0802_【掌握】RocketMQ服务搭建 官方推荐在Linux系统中进行RocketMQ服务部署,在本课程中将为读者讲解RocketMQ的组件获取、服务安装与启动的相关实例操作。

0803_【掌握】ACL访问控制列表 消息组件在实际项目中需要实现对外进行服务整合的需要,这样一来为了保证服务的安全就必须进行认证与授权管理,本课程通过实例为读者讲解ACL开启以及配置。

0804_【理解】RocketMQ控制台 有服务必有监控已经成为了当代软件项目设计的核心宗旨,虽然RocketMQ本身提供了强大的消息服务支持,但是为了保证其运行的稳定则需要通过RocketMQExternals开源项目实现监控支持,本课程讲解了GITHUB的扩展程序的下载以及服务配置。

0805_【理解】RocketMQ管理命令 RocketMQ提供了mqadmin命令,利用该命令可以直接管理当前消息系统之中的主题、生产者与消费者,本课程通过实例为读者讲解了这一命令的使用。

0806_【理解】Benchmark压力测试 为了可以准确的得到RocketMQ节点所能够承受的并发访问量,可以通过Benchmark提供的工具进行压力测试,本课程通过实例为读者讲解了Beanchmark所提供的相关压力测试工具的使用。

0807_【掌握】RocketMQ核心概念 不同的消息组件有各自不同的处理架构,本课程为读者讲解了RocketMQ之中所涉及到的架构概念,并解释了核心模块的主要作用。

0808_【理解】Remoting通讯模块 RocketMQ消息组件中需要基于长连接的模式与NameServer或Broker实现通讯,而这些通讯机制的实现都是基于Netty完成的,本课程为通过对RocketMQ项目中的remoting子模块的源代码,分析了Netty通讯的核心处理机制。

0809_【理解】消息结构 消息是RocketMQ之中主要的数据传输内容,在本课程中为读者讲解了消息协议的组成结构,并通过消息的类源代码进行了消息的组成内容以及继承结构。

0810_【理解】心跳检查 RocketMQ中除了核心的消息内容之外,还需要定时进行心跳数据的发送,以实现心跳检查,本课程通过RocketMQ的源代码分析了心跳机制中的发送与检查实现。

0811_【掌握】数据存储 RocketMQ中需要对消息数据进行存储,本课程为读者分析了Broker中数据存储目录的作用,同时分析了CommitLog与Queue之间的消费处理流程。

0812_【掌握】数据刷盘 数据刷盘是RocketMQ提供的重要存储性能优化的实现,在本课程中为读者讲解了数据刷盘的两种处理形式,同时分析了PageCache的作用以及核心源码解析。

0813_【掌握】RocketMQ集群服务概述 稳定与高效是消息组件最重要的处理保障,RocketMQ可以基于集群服务的方式实现多Broker的节点配置,本课程为读者分析了Broker集群的四种实现方式,同时给出了本次RocketMQ集群服务搭建所需要的服务主机信息。

0814_【掌握】NameServer集群 NameServer提供了所有服务的映射数据项存储,是RocketMQ中最为重要的服务组件,本课程将通过虚拟机实现NameServer集群搭建。

0815_【掌握】Broker集群 Broker是最终实现消息处理的核心单元,在本次课程中将通过九台服务器实现三组Broker分片集群,并通过具体的配置步骤实现了服务的搭建以及控制台改造。

0816_【掌握】RocketMQClient基本使用 RocketMQ应用服务搭建完成之后,在实际生产环境下,需要通过程序来实现生产端与消费端,本课程通过Apache官方给出rocketmq相关依赖实现了消息服务的调用。

0817_【掌握】消息生产模式 RocketMQ中提供了三种不同的消息生产模式,在本课程中将为读者详细的解释这三种生产模式的特点以及具体实现。

0818_【掌握】消费模式 RocketMQ的消费端提供有两种消费模式,在本课程中将为读者讲解这两种消费模式的工作原理以及具体的代码实现。

0819_【掌握】业务标签 为了可以实现更加详细的子业务消息的处理逻辑,可以基于消息主题实现进一步的划分,所以在RocketMQ中提供了Tag的概念,本课程为读者详细解释了RocketMQ中Topic、Group、Tag彼此之间的关联,并且通过实例演示了Tag的使用。

0820_【掌握】消息识别码 为进一步实现业务消息的标记,在RocketMQ中提供了KEYS识别码的功能,本课程为读者分析了KEYS识别码的作用以及具体应用。

0821_【理解】Namespace Namespace是一种基于命名空间实现消息分类管理的操作机制,本课程为读者讲解了NameSpace的作用,以及如何通过代码实现生产者与消费者的Namespace定义。

0822_【掌握】消息广播 消息广播可以使不同的消费者收取到相同的消息数据,在本课程中将通过具体的应用实例为读者讲解消息广播与分组之间的关联。

0823_【掌握】消息排序 RocketMQ中的消息生产与消费都依赖于消息队列(MessageQueue),为了实现消息的顺序处理,在RocketMQ中提供了顺序消费的支持,在本课程中将通过具体的实例分析为读者讲解MessageQueueSelector与MessageListenerOrderly接口使用。

0824_【掌握】延迟消息 为了实现合理的业务与消息之间的关联,在RocketMQ中支持了延迟消息的功能,本课程为读者讲解了延迟消息设计的存在的意义,同时通过具体的实例讲解了延迟消息的开发以及Broker相关的配置项作用。

0825_【掌握】消息过滤 在RocketMQ中可以通过tag实现不同子业务的消息逻辑处理,而除了此机制外还提供了更加灵活的SQL92消息过滤,本课程为读者分析了SQL92标准过滤的作用,同时讲解了MessageSelector实现SQL92过滤的程序实现。

0826_【掌握】消息批处理 面对大规模消息量生产的应用环境,为了提高传输效率可以通过批量消息的方式进行处理,本课程为读者分析了批量消息的设计意义,并通过具体代码进行了操作实现。

0827_【掌握】日志消息处理 虽然RocketMQ没有提供像Kafka那样卓越的日志采集性能,但是在一些日志量较小的环境下,也可以与已有的日志组件整合,实现日志采集的功能,本课程通过具体的实例讲解了Logback日志的采集处理。

0828_【掌握】事务消息简介 RocketMQ提供了事务消息处理的机制,而这机制可以有效的解决分布式状态下的事务处理问题,本课程为读者分析了分布式事务的实现意义,并通过具体的操作演示了事务消息的执行与回调检查。

0901_【理解】SpringCloudStream简介 SpringCloudStream是一种事件驱动型的设计框架,可以轻松的以标准的结构实现微服务业务的整合处理,本课程从传统的消息组件操作问题分析,讲解了消息驱动型微服务框架的主要作用,并分析了其核心的组成架构。

0902_【理解】SCS消息生产者 SpringCloudStream提供了统一的生产者消息处理规范,在本课程中将为读者讲解了基于RocketMQ的SCS生产端服务配置,并通过具体的代码实现了消息发送处理。

0903_【理解】SCS消息消费者 SpringCloudStream消息消费者依然采用监听的形式实现消息数据的接收,在本课程中将基于RocketMQ实现消费端的配置与消息接收。

0904_【理解】消费过滤 虽然SpringCloudStream采用了更加标准的方式实现了消息驱动的通信模型,但是不同的消息组件有其自身的消息分类,在本课程中将对已有的代码进行改造,使其可以同时多个不同的消费通道,并实现不同消息的过滤。

0905_【了解】SpringCloudConfig简介 SpringCloudConfig提供了一种动态配置的解决方案,本课程为读者分析了这种动态配置处理的主要作用,并基于GitLab实现了服务仓库的构建。

0906_【了解】SpringCloudConfig服务端 SpringCloudConfig服务端需要与GITLab或GITHub实现连接,这样才可以实现配置抓取,本课程通过具体的实现操作,讲解了配置服务器的搭建以及SSH连接配置。

0907_【了解】SpringCloudConfig客户端 配置服务端的提供是为了便于实现GITLab仓库中的配置抓取,在本次课程中将创建一个配置客户端微服务,并通过微服务名称实现配置项的抓取。

0908_【了解】SpringCloudBus 使用SpringCloudConfig的核心目的在于可以动态的实现配置项的加载,而这一功能就需要基于SpringCloudBus并结合消息组件的模式完成,本课程在已有的RocketMQ服务的基础之上实现了配置的动态刷新操作。

0909_【掌握】SpringCloudConfig整合Nacos SpringCloudAlibaba针对于SpringCloudConfig提供了更加简化的处理机制,在本课程中将为读者分析传统的SpringCloudConfig存在的缺陷,并且通过具体的代码实现了基于Nacos的配置动态管理操作。

0910_【掌握】Seata分布式事务简介 分布式的业务中心如果要实现统一的事务调度,则必须基于二阶段提交的模式来完成,在本课程中为读者分析了分布式事务与微服务之间的关联,同时通过具体的案例分析了Seata业务层分布式事务处理的特点、实现流程以及实现分类。

0911_【掌握】雇员微服务 如果要想实现完整的分布式事务处理,则必须启用新的微服务提供者,在本课程中将依据已有的部门业务模型,搭建雇员微服务以构成分布式事务实现场景。

0912_【掌握】Seata服务安装与配置 Seata是公布在Github上的一套完整开源项目,本次将通过github为读者演示组件的获取操作,并且依据实例演示了Seata的配置,以及与Nacos的集成。

0913_【掌握】AT模式 Seata提供了AT模式实现了与传统XA模式的对接,在本课程中将为读者分析AT模式的操作特点,并且通过完成的代码实现了AT模式下的分布式事务管理。

0914_【掌握】TCC模式 TCC模式是AT模式的手工化实现,可以获得较高的处理性能,本课程为读者分析了TCC模式的实现流程,并通过具体的代码实现了TCC分布式事务。

0915_【理解】Saga模式 Saga是一种跨平台的解决方案,可以很好的解决异构系统的分布式事务处理问题,在本章将为读者讲解Saga的主要作用、Saga状态机设计器的服务构建、并结合Seata模拟实现分布式事务的处理。

1001_【了解】SpringCloudSleuth简介 SpringCloudSleuth是SpringCloud内置的链路跟踪解决方案,本课程为读者分析了链路跟踪的设计意义,并且通过实例讲解了SpringCloudSleuth的基本使用。

1002_【了解】搭建Zipkin服务 Zipkin是由Twtter公布的开源项目,同时在GITHub中也提供了项目源代码,本课程通过具体的操作实例为读者讲解了Zipkin的项目打包与服务部署操作。

1003_【了解】微服务日志采集 Zipkin作为数据采集服务,开启后就需要由不同的微服务进行日志数据的发送,在本课程中将对已有的微服务进行修改,使其实现与zipkin服务对接操作。

1004_【了解】Zipkin数据持久化 Zipkin的内部为了便于持久化存储提供了MySQL的解决方案,本课程将对已有的zipkin采集服务进行修改,使其可以实现基于MySQL链路数据存储支持。

1005_【理解】Skywalking简介 SkyWalking是当前项目开发中使用最多的全链路跟踪组件,本课程中为读者介绍了zipkin所带来的问题,同时介绍了SkyWalking组件的使用特点。

1006_【理解】SkyWalking服务安装与配置 SkyWalking官方站点提供了完整的工具组件包,本课程将为读者讲解组件的获取,同时讲解了Skywalking与ElasticSearch存储的整合配置。

1007_【理解】微服务接入 SkyWalking为了实现无侵入的接入模式,提供了探针的接入策略,本课程在已有的SKyWalking应用的基础之上实现了链路数据的发送以及可视化显示处理。

1008_【了解】Sentry服务简介 为了进行及时的错误排查,就需要对微服务中的异常进行记录,所以在项目开发中开发者可以基于Sentry实现错误统计,本课程为读者讲解了Sentry的主要作用。

1009_【了解】Sentry服务接入 Sentry的数据主要来自于项目应用,本课程将对之前的SpringCloud项目应用进行改造,使其可以将错误数据发送到Sentry应用之中。

1010_【了解】Sentry错误警报 为了可以及时的进行错误处理,在Sentry还提供了预警机制的配置,本课程为读者演示了Sentry预警机制的配置与触发操作。


文章关键词: