Spring响应式编程实战课程介绍:
Spring 5 的发布为响应式编程普及和发展带来了红利,基于 Spring 5 内嵌的响应式 Web 框架、响应式数据访问、响应式通信等多种响应式组件,开发者可以轻松构建一个具备及时响应性和弹性的响应式系统。如今,Spring响应式编程已被国内诸如阿里、腾讯等一线大厂广泛应用,可以说它代表了一种技术发展和演进的趋势。紧跟这一趋势,对于提升开发者的职业层级是一个很好的加分项。
课程大纲:
基本概念篇
专栏将讲解响应式系统和响应式编程的基本概念以及应用场景,并分析响应式编程模型中所包含的响应式流和背压机制,学了这些,你便掌握了实现系统弹性的关键。
此外,这一部分也会讲解 Spring 框架中的响应式编程技术方案,用一个 ReactiveSpringCSS 案例贯穿整个学习过程,为你后面学习响应式Web、响应式数据访问、响应式消息通信和响应式测试等内容做铺垫。
编程框架篇
Project Reactor 是 Spring 5 内置的响应式编程框架。它可以使用 Flux 或 Mono 对象来构建响应式数据流,并提供了高效的响应式操作符。它有多种组合方式、完善的异常处理机制,以及面对背压时候的处理机制、重试机制。因此,成为业界领先的响应式编程框架。学完这一部分,你将懂得如何从开发框架和代码编写上提高系统及时响应性。
技术组建篇-响应式 Web 服务
WebFlux 是 Spring 中全新的 Web 开发框架,相比于传统的 Web 框架,它是一个典型非阻塞异步的框架,它可以运行在诸如 Netty、Undertow 等容器上,因此它的运行环境的可选择性要比传统 Web 框架多得多。
这部分将带你用 WebFlux 来构建响应式 RESTful 服务。并为你讲解如何使用支持响应式流的 WebClient 工具类调用响应式服务以及针对网络通信,如何使用全新的 RSocket 协议来实现响应式数据传输。
学完这一部分,你将掌握构建 Web 服务的系统方法,学会创建响应式系统中 Web 层组件。
技术组件篇-响应式数据访问
传统的 JDBC 并不支持响应式编程模式,而 Spring 家族也专门提供了 Spring Data R2DBC 框架来解决这一问题。这部分会讲解如何使用 Spring Data Reactive 组件来构建响应式数据访问层,并结合案例分别对MongoDB 和 Redis这两款 NoSQL 数据库实现数据操作。
学完这一部分,你可以掌握使用响应式编程技术实现数据访问层的系统方法,并学会在响应式系统中嵌入 MongoDB、Redis 等主流 NoSQL 技术的实现过程。
技术组件篇-响应式消息通信
这部分会讲解如何构建响应式消息通信层。首先,我们将使用 Spring Cloud Stream 框架的响应式版本来实现消息的发布和消费。另外,关于消息通信,专栏也会介绍一系列高级开发主体,为你提供满足日常开发需要的开发技巧。
学完这一模块,你就会使用 Spring Cloud Stream 框架实现跨服务之间的响应式消息通信,同时也会掌握 RabbitMQ 这款消息中间件的使用方法。
技术组件篇-响应式测试
专栏首先会为你详细讲解关于 Project Reactor 的测试方法和工具,然后手把手带你对 Web 层和数据访问层中的响应式组件进行系统测试。学完这一模块,你便掌握了验证各个响应式编程组件的正确性的系统方法,并学会使用 Spring Boot 中提供的各种测试注解完成对 Web 服务层、消息通信层和数据访问层的集成测试。
课程目录:
——/计算机教程/07拉勾/091-753-Spring 响应式编程实战/ ├──文档 | ├──01 追本溯源:响应式编程究竟是一种什么样的技术体系?.md 17.19kb | ├──02 背压机制:响应式流为什么能够提高系统的弹性?.md 15.83kb | ├──03 场景应用:响应式编程能够应用于哪些具体场景?.md 19.39kb | ├──04 案例驱动:如何基于 Spring 框架来学习响应式编程?.md 12.12kb | ├──05 顶级框架:Spring 为什么选择 Reactor 作为响应式编程框架?.md 17.63kb | ├──06 流式操作:如何使用 Flux 和 Mono 高效构建响应式数据流?.md 19.36kb | ├──07 Reactor 操作符(上):如何快速转换响应式流?.md 20.61kb | ├──08 Reactor 操作符(下):如何多样化裁剪响应式流?.md 24.48kb | ├──09 框架升级:WebFlux 比 Web MVC 到底好在哪里?.md 18.07kb | ├──10 WebFlux(上):如何使用注解编程模式构建异步非阻塞服务?.md 26.17kb | ├──11 WebFlux(下):如何使用函数式编程模型构建异步非阻塞服务?.md 24.51kb | ├──12 WebClient:如何实现非阻塞式的跨服务远程调用?.md 30.55kb | ├──13 RSocket:一种新的高性能网络通信协议.md 19.82kb | ├──14 响应式全栈:响应式编程能为数据访问过程带来什么样的变化?.md 25.57kb | ├──15 MongoDB 集成:如何在响应式应用中访问 NoSQL 数据库?.md 27.10kb | ├──16 Redi 集成:如何实现对 Redi 的响应式数据访问?.md 32.17kb | ├──17 R2DBC:关系型数据库能具备响应式数据访问特性吗?.md 20.92kb | ├──18 消息驱动:Spring Cloud Stream 如何为系统提升伸缩性?.md 21.89kb | ├──19 消息发布:如何以响应式的编程方式发送消息?.md 26.91kb | ├──20 消息消费:如何选择可用的高级开发技巧?.md 24.50kb | ├──21 测试方案:如何验证响应式编程组件的正确性?.md 19.69kb | ├──22 测试集成:响应式 Web 应用程序如何进行测试?.md 29.34kb | ├──结束语 以终为始:响应式编程是一种银弹吗?.md 5.78kb | └──开篇词 响应式编程:紧跟技术趋势,提升系统弹性.md 10.78kb ├──01 追本溯源:响应式编程究竟是一种什么样的技术体系?.mp4 153.50M ├──02 背压机制:响应式流为什么能够提高系统的弹性?.mp4 101.83M ├──03 场景应用:响应式编程能够应用于哪些具体场景?.mp4 138.22M ├──04 案例驱动:如何基于 Spring 框架来学习响应式编程?.mp4 142.42M ├──05 顶级框架:Spring 为什么选择 Reactor 作为响应式编程框架?.mp4 143.10M ├──06 流式操作:如何使用 Flux 和 Mono 高效构建响应式数据流?.mp4 126.15M ├──07 Reactor 操作符(上):如何快速转换响应式流?.mp4 129.24M ├──08 Reactor 操作符(下):如何多样化裁剪响应式流?.mp4 112.33M ├──09 框架升级:WebFlux 比 Web MVC 到底好在哪里?.mp4 150.72M ├──10 WebFlux(上):如何使用注解编程模式构建异步非阻塞服务?.mp4 120.57M ├──11 WebFlux(下):如何使用函数式编程模型构建异步非阻塞服务?.mp4 122.34M ├──12 WebClient:如何实现非阻塞式的跨服务远程调用?.mp4 139.26M ├──13 RSocket:一种新的高性能网络通信协议.mp4 141.81M ├──14 响应式全栈:响应式编程能为数据访问过程带来什么样的变化?.mp4 128.95M ├──15 MongoDB 集成:如何在响应式应用中访问 NoSQL 数据库?.mp4 148.75M ├──16 Redi 集成:如何实现对 Redi 的响应式数据访问?.mp4 146.74M ├──17 R2DBC:关系型数据库能具备响应式数据访问特性吗?.mp4 147.15M ├──18 消息驱动:Spring Cloud Stream 如何为系统提升伸缩性?.mp4 132.21M ├──19 消息发布:如何以响应式的编程方式发送消息?.mp4 156.98M ├──20 消息消费:如何选择可用的高级开发技巧?.mp4 143.38M ├──21 测试方案:如何验证响应式编程组件的正确性?.mp4 148.01M ├──22 测试集成:响应式 Web 应用程序如何进行测试?.mp4 140.97M ├──结束语 以终为始:响应式编程是一种银弹吗?.mp4 84.43M └──开篇词 响应式编程:紧跟技术趋势,提升系统弹性.mp4 141.60M