幻仿编程 Udemy 付费课程,独家中英字幕 + 配套资料!
限时1折特惠!课程永久访问权,随时随地学习!
异步编程设计模式 – C/C++
系统编程、C/++、多线程概念、线程同步、操作系统项目课程、事件循环
讲师:Abhishek CSEPracticals
您将学到什么
- 反应式编程试图解决什么问题?
- 什么是反应式编程?
- 使用 Project Reactor 进行反应式编程
- 学习使用 DB 编写反应式编程代码
- 学习使用 Spring 编写反应式编程
- 从头开始构建反应式 API
- 学习使用 WebClient 构建非阻塞客户端
- 使用 JUNIT 为 Reactive API 编写端到端自动化测试用例
探索相关主题
- 响应式编程
- REST API
- Web 开发
- 发展
要求
- 至少 JDK 8
- 任何一种 IDE,例如 IntelliJ、Eclipse 等,
- 要想充分利用本课程,必须具备 Spring Boot 知识
描述
本课程旨在为您提供使用 Spring WebFlux 的反应式编程和反应式 RestFul API的理论和编码方面。
如果您希望了解下面列出的内容:
- 什么是反应式编程?
- 使用 Spring WebFlux编写反应式编程代码 。
- 使用 DB编写反应式编程代码。
- 使用 Spring WebFlux构建反应式 RestFul API
那么这门课程就很适合你。这是一门纯实践导向的课程,你将在其中编写大量代码。
在本课程结束时,您将完全了解如何使用 Spring WebFlux 编码和实现 Reactive API。
为什么要采用反应式编程?
- 本节重点介绍了响应式编程的必要性,并详细解释了spring-mvc中当前的执行模型。
- 本节解释了 spring-mvc 的缺点。
- 本节讲解spring-mvc中的并发模型。
什么是反应式编程?
- 本节讨论“什么是反应式编程?”
- 使用一个简单的示例来简要说明反应式编程的工作原理。
- 本节将为大家介绍Reactive Streams 规范。
- 本节将对现有的“反应式库”进行介绍。
Project Reactor 入门
- 本节将为您提供Project Reactor的所有基础知识,并使用一些示例探索项目反应器。
- 本节详细介绍了反应类型Flux和Mono 。
设置本课程的项目
- 在本节中,我们将使用Spring Intializr网站为本课程设置项目。
反应式编程(Flux 和 Mono)- 动手 + Junit 测试
- 在本节中,我们将通过代码探索 Flux 和 Mono 的工作原理。
- 我们将实时编码如何使用 Flux 和 Mono 编写 Junit 测试用例。
- 我们将探索 Flux 和 Mono 中的许多不同的操作符。
使用带注释的控制器构建第一个非阻塞 RESTFUL API – 动手实践
- 在本节中,我们将使用带注释的控制器构建第一个非阻塞 API。
- 本节介绍反应式 API 的工作原理。
- 本节还介绍了如何从端点返回Flux/Mono的编码方面。
- 本节还介绍如何使用WebTestClient编写 JUNIT 测试用例。
使用函数式 Web 构建非阻塞 RESTFUL API – 动手实践
- 在本节中,我们将使用功能性 Web 模块构建非阻塞 API。
- 本节讲解了构成函数 Web 模块基础的RouterFunction和HandlerFunction 。
- 本节还介绍如何使用WebTestClient编写 JUNIT 测试用例。
Spring WebFlux 和 Netty – 执行模型
- 本节介绍 WebFlux 背后用于处理HTTP 请求/响应的不同层。
- 本节涵盖了NETTY的概念,例如Channel、EventLoop以及Netty的一些技术方面。
反应式 API 概述
- 本节将概述我们将在本课程中构建的 Reactive API 。
数据库中的反应式编程 – MongoDB – 实践
- 在本节中,我们将学习如何使用 MongoDB 编写反应式编程代码。
- 定义项目的项目文档。
- 本节介绍如何在 Spring Boot 中配置不同的配置文件。
- 在本节中,我们将设置ItemReactive Mongo DB适配器。
- 本节还介绍如何为反应式存储库编写JUNIT 测试用例。
构建 Item Reactive API 端点 – 使用 RestController
- 在本节中,我们将学习如何使用@RestController方法编写 Item CRUD Reactive API 。
- 本节还介绍如何使用JUNIT和非阻塞测试客户端WebTestClient编写自动化测试。
构建项目反应式 API 端点 – 使用功能性 Web
- 在本节中,我们将学习如何使用功能性 Web方法编写项目CRUD反应式 API 。
- 本节还介绍如何使用JUNIT和非阻塞测试客户端WebTestClient编写自动化测试。
使用 WebClient 构建非阻塞客户端
- 在本节中,我们将探讨使用 WebClient与 Reactive API 交互的技术。
- 学习使用exchange()和withdraw()方法调用 Reactive API 的技术。
- 我们将使用WebClient探索GET、PUT、POST和DELETE操作。
处理 WebFlux 中的异常 – RestController
- 在本节中,我们将编写代码并探索不同的方法来处理使用RestController构建的反应式 API 中发生的异常/错误。
- 使用@ExceptionHandler和@ControllerAdvice处理异常。
- 本节还介绍如何为异常场景编写JUNIT 测试用例。
处理 WebFlux 中的异常 – 函数式 Web
- 在本节中,我们将编写代码并探索不同的方法来处理使用Functional Web构建的反应式 API 中发生的异常/错误。
- 使用WebExceptionHandler处理异常。
- 本节还介绍如何为异常场景编写JUNIT 测试用例。
WebClient – 异常处理
- 在本节中,我们将编码并探讨如何使用WebClient处理异常。
- 学习使用exchange()和withdraw()方法处理异常的技术。
使用 WebFlux 传输实时数据 – 服务器端事件 (SSE)
- 在本节中,我们将编写代码并学习如何使用 Mongo DB和Spring WebFlux构建流实时数据端点。
- 本节介绍Mongo DB中的 Tailable Cursors和Capped Collections。
- 构建非阻塞流端点并使用@Tailable注释与 Mongo DB 交互。
- 学习使用JUNIT为流端点 (SSE)编写自动化测试。
本课程适合哪些人:
- 任何愿意学习并使用 Spring WebFlux 构建 Reactive API 的人
| 共 66 节课程 • 总时长 7 小时 4 分钟 | |
| 第一章 理解术语Asynchronous | |
| 1. 议程 | 2分15秒 |
| 2. 本课程的代码访问权限 | 1分57秒 |
| 3. 同步与异步示例1 | 5分29秒 |
| 4. 同步与异步示例 2 | 5分18秒 |
| 5. 异步 与 多线程 | 8分30秒 |
| 6. 异步多线程设计模型 | 5分35秒 |
| 7. 课程布局 | 2分33秒 |
| 第二章 异步编程入门 | |
| 1. 本节目标 | 2分21秒 |
| 2. 演示 2 – 单线程并发 | 6分31秒 |
| 3. 为什么在多线程环境中需要锁定 | 7分32秒 |
| 4. 为什么事件循环是无锁的 | 5分9秒 |
| 5. 事件循环提供并发性,但没有并行性 | 3分18秒 |
| 6. 事件循环内部工作机制 | 11分29秒 |
| 7. 本课程的代码访问权限 | 1分57秒 |
| 8. 事件循环数据结构 | 9分5秒 |
| 9. init( )和run( ) API实现 | 9分 |
| 10. 导入辅助APIs | 2分47秒 |
| 11. EL 线程实现 | 10分25秒 |
| 12. 任务提交 | 5分39秒 |
| 13. Demo 1 – 事件循环使用演示 | 11分5秒 |
| 第三章 设计模式1 – 序列化多线程流程 | |
| 1. 本节包含什么内容 | 3分34秒 |
| 2. 重叠与非重叠工作 | 3分2秒 |
| 3. 多线程总是更优越吗? | 12分56秒 |
| 4. 完成附录C | 26秒 |
| 5. 定义问题陈述 | 9分30秒 |
| 6. 解决方案讨论 | 5分23秒 |
| 7. 设置测试项目 | 25分28秒 |
| 8. 集成事件循环 – 第一部分 | 7分33秒 |
| 9. 集成事件循环 – 第二部分 | 17分36秒 |
| 第四章 设计模式2 – 序列化计时器 | |
| 1. 本节议程 | 3分34秒 |
| 2. 熟悉定时器库 | 10分56秒 |
| 3. 建议的代码更改 | 4分32秒 |
| 4. 计时器集成 – 代码更改 | 8分41秒 |
| 5. 事件循环处理定时器事件 | 5分58秒 |
| 6. 事件循环概述 | 2分27秒 |
| 第五章 设计模式3 – 抢占和重新调度 | |
| 1. 为什么抢占式很重要 | 3分48秒 |
| 2. 实现抢占支持 | 4分16秒 |
| 3. 抢占 – STP中的演示和示例 – 第一部分 | 5分6秒 |
| 4. 抢占 – STP中的演示和示例 – 第2部分 | 11分30秒 |
| 5. 任务 – 引入一个新的任务来序列化并发送数据 | 6分37秒 |
| 第六章 设计模式4 – 任务优先级 | |
| 1. 任务优先级 | 5分52秒 |
| 2. 任务优先级实现 | 5分18秒 |
| 3. 解决的问题 – 第一部分 | 7分31秒 |
| 4. 解决的问题 – 第二部分 | 4分54秒 |
| 第七章 设计模式5 – 处理过早删除 | |
| 1. 什么是早产缺失 | 9分35秒 |
| 2. 解决方案 | 2分41秒 |
| 3. 单个对象删除 | 7分2秒 |
| 4. 容器对象删除 – 第一部分 | 4分29秒 |
| 5. 容器对象删除 – 第2部分 | 4分54秒 |
| 第八章 附录A – 理解生产者消费者同步 | |
| 1. 理解生产者消费者同步 | 12分38秒 |
| 2. 生产者-消费者循环漏洞检查 | 10分4秒 |
| 第九章 附录B – 理解并发和并行 | |
| 1. 为什么我们需要并发 | 5分5秒 |
| 2. 并发示例1 | 5分14秒 |
| 3. 并发示例2 | 3分33秒 |
| 第十章 附录 C – 添加监听器线程 | |
| 1. 监听线程 – 责任委托 | 7分12秒 |
| 2. 实施准备 | 3分36秒 |
| 3. 网络API和演示 | 3分46秒 |
| 4. 多监听器应用程序实现 | 3分46秒 |
| 5. 监听线程 – 快速代码浏览 | 6分31秒 |
| 第11章 附录 D – Posix 定时器 | |
| 1. 议程和先决条件 | 2分39秒 |
| 2. 计时器类型 | 2分57秒 |
| 3. POSIX 计时器 API | 2分10秒 |
| 4. 计时器设计 | 7分 |
| 5. 创建计时器的步骤 | 9分44秒 |
| 6. 计时器实现和演示 | 14分15秒 |
| 7. 奖金 | 1分16秒 |
| 1. 关于课程更新与获取 如何获取本站课程? ○ 免费获取方式:在本站签到、评论、发布文章等可获取积分,通过积分购买课程。 ○ 付费获取方式:购买本站【月度会员】或【永久会员】。 课程购买后是否支持更新? ○ 是的,所有课程均提供免费更新服务。 我们致力于为您提供持续的学习支持。 如何获取更新? ○ 单独购买的课程: 您可在“个人中心”随时查看购买记录及最新下载链接,轻松获取免费更新。 ○ 永久会员: 您可在相关页面直接查看最新下载地址,随时免费获取更新。 ○ 非永久会员(重要提示):通过会员权限下载的课程,在“个人中心”可能不显示具体订单记录。 因此,会员到期后,您将无法通过“个人中心”查看最新下载链接。 ① 解决方案建议:续费会员: 恢复会员权限后,即可再次查看所有最新下载链接。 ② 妥善保存下载链接: 我们强烈建议您在会员有效期内,保存好本站分享的课程下载链接。通常,课程更新内容会直接补充到原有分享链接中。 |
| 2. 关于课程资料 课程下载后资料是否齐全? ○ 绝大部分课程资料齐全。 我们尽力确保您获得完整的学习资源。 ○ 少数情况说明: 极少数课程可能存在资料缺失情况。针对 Udemy 课程,资料形式多样,请知悉:本地文件(随视频下载): 此类课件通常随视频一并提供,下载即得。 ① 本地文件(含链接): 课件文件中会提供资料下载链接,您需自行访问链接下载。此类资料通常也可获取。 ② 在线平台存储(如 GitHub): 讲师会在视频中说明资料获取方式(如访问特定平台),请您按指引自行下载。 ③ Udemy 平台内资料: 部分资料需登录您在 Udemy 购买的账号才能查看。此类资料本站无法提供,除非您自行在 Udemy 平台购买该课程。 |
| 3. 关于课程字幕 是否提供中英文双字幕?原本无字幕的课程是否支持? ○ 是的,本站下载的所有课程均提供中英文双字幕,包括 Udemy 原本无任何字幕的课程。 我们致力于提升您的学习体验。 Udemy 字幕现状与本站服务: ○ Udemy 绝大多数课程本身不提供任何字幕。在少数提供字幕的课程中,也几乎不提供中文字幕。 本站字幕服务流程: ① Udemy 有字幕: 我们会将其翻译成中文字幕,与英文字幕一同提供。 ② Udemy 无字幕: 我们会通过技术手段识别生成英文字幕,再翻译成中文字幕,一同提供给您。 字幕服务重要说明(请您理解): ○ 翻译精度: 字幕翻译采用谷歌翻译引擎完成,虽不及人工翻译精准,但足以保障您正常学习理解。 ○ 若您仍然觉得字幕精度较低: 可联系站长针对性润色字幕(该服务仅限本站会员)。 |
| 4. 关于视频存储与使用 视频存储位置与观看/下载方式? 本站所有课程视频均存储于网盘平台。 您支持在线观看: 可在网盘内直接播放学习。 您支持下载: 可将视频下载至本地,使用播放器播放,更灵活便捷。 主要存储网盘:百度网盘 视频格式与加密情况? 本站所有课程视频均以 MP4 或 MKV 通用格式提供。 视频文件不加密,您可自由分享(请遵守相关法律法规)。 播放建议: 使用本地播放器(如 PotPlayer)播放时,可同时加载中英文字幕文件,学习体验更佳。您可参考我们提供的《PotPlayer 挂载中英双字幕教程》。 |
| 5. 关于售后支持与退款政策 遇到问题如何联系? 无论您在购买前或购买后遇到任何疑问,都欢迎随时联系站长。 我们将竭诚为您服务。 退款政策说明: 原则: 由于虚拟商品(课程、资料等)具有可复制性,一旦购买成功并完成下载,原则上不支持退款。 请您在购买前仔细阅读课程介绍、资料说明及本条款,确认符合您的需求。 如有不确定之处,欢迎先行咨询站长。 |



























暂无评论内容