# NestJS从拔高到精通，大型复杂业务架构落地实践

*Published:* 2024-12-26
*Author:* 客服001

#### 温馨提醒

如果文章内容或图片资源失效，请留言反馈，我们会及时处理，谢谢

本文最后更新于2024年12月26日，已超过 180天没有更新



从前端工程师进阶前高级工程师，最快路径是精通 NestJS。如果你想全面拔高 NestJS 技术，本课就是你的不二之选。本课通过大型复杂业务，从模块化设计到微服务治理全流程实战演练，带你全方位拔高与精通 NestJS 核心技能(涵盖动态模块、队列任务、缓存管理及权限校验等)，迅速具备服务端开发核心竞争力，架构设计与复杂业务落地实战能力，助力你成为更高效、更有竞争力、更快速响应的前端高级工程师。

**从拔高到精通，一课吃透NestJS，快速提升服务端开发核心竞争力**

**全面覆盖NestJS核心技能**

全面涵盖动态模块、队列任务、缓存管理及权限校验等技术，从拔高到精通，快速掌握NestJS核心技能。

**构建高效稳定的服务端框架**

掌握大型复杂项目开发模式，构建高效、可扩展的服务端应用，晋升高效快速响应的技术高手。

**企业级全流程工程化开发**

对标企业全栈开发标准，从需求分析 开发、测试到部署的完整企业级项目流程，提升工程化项目实施能力。

**提升大型复杂业务架构落地能力**

更全局的架构设计思维，更优秀的架构设计落地能力，更游刃有余的问题解决与架构方案优化能力。

[![](https://www.xarjtc.com/wp-content/uploads/2024/12/7a89298075841bf.webp)](https://www.xarjtc.com/wp-content/uploads/2024/12/7a89298075841bf.webp)

[![](https://www.xarjtc.com/wp-content/uploads/2024/12/8e91984d46d80db.webp)](https://www.xarjtc.com/wp-content/uploads/2024/12/8e91984d46d80db.webp)

[![](https://www.xarjtc.com/wp-content/uploads/2024/12/f5e41930ec55b35.webp)](https://www.xarjtc.com/wp-content/uploads/2024/12/f5e41930ec55b35.webp)

[![](https://www.xarjtc.com/wp-content/uploads/2024/12/6c8cefff4add670.webp)](https://www.xarjtc.com/wp-content/uploads/2024/12/6c8cefff4add670.webp)

**课程目录：**

第1章 课程导学 试看2 节 | 31分钟

课程介绍、课程学习建议(学习顺序、学习应用人群)

视频：

1-1 课程导学 (23:12)

试看

视频：

1-2 基础课vs进阶课差异在哪里? (07:02)

第2章 为何选择NestJS构建复杂前端开发应用 试看4 节 | 57分钟

重点介绍 NestJS 在性能优化、模块化设计和安全性上的优势，学到如何通过 NestJS 的依赖注入和非阻塞 I/O 模型构建高性能、安全的企业级应用，并了解如何编写高质量的测试代码以提高项目的可靠性

视频：

2-1 Java与Node.js：Node.js作为服务端的优势 (18:11)

试看

视频：

2-2 什么是nestjs?应用场景是什么? (23:59)

视频：

2-3 常见问题：对比koa&amp;eggjs&amp;express，nestjs优势是什么? (11:29)

视频：

2-4 \[重要\]课程代码+资料说明 (02:59)

第3章 高效构建与优化NestJS开发环境10 节 | 120分钟

搭建和优化 NestJS 开发环境，NestJS CLI 安装与工程目录结构最佳实践，介绍如何调试Nestjs应用，扩展Docker 安装配置

视频：

3-1 node开发环境搭建：常见工作流介绍&amp;yarn&amp;pnpm&amp;corepack - (13:05)

视频：

3-2 快速上手：安装官方nestjs CLI工具 (13:30)

视频：

3-3 最佳实践：工程目录+文件命名约定 (17:30)

视频：

3-4 \[扩展\]Nestjs版本更新10.0带来了哪些更新 (09:59)

视频：

3-5 如何调试Nestjs应用：三种调试方法 (09:42)

视频：

3-6 导学：容器与虚拟机 (14:34)

视频：

3-7 安装配置Docker&amp;Docker核心概念 (15:51)

视频：

3-8 \[扩展\]管理Docker工具：Potainer&amp;Lazydocker (14:19)

视频：

3-9 \[扩展\]配置Docker国内的加速 (04:18)

视频：

3-10 \[扩展\]Docker集成管理命令compose (06:46)

第4章 深入Nestjs核心：依赖注入与面向切面编程AOP7 节 | 77分钟

深入理解 NestJS 的依赖注入与 AOP 编程思想，解析 DI 与 IoC 原理，探讨模块化代码组织、控制器与服务架构，并介绍 DTO、DAO 和 MVC 架构基础

视频：

4-1 编程思想 ：什么是OOP?FP?FRP编程? (20:22)

视频：

4-2 编程思想：AOP切面编程是什么?特点是什么? (05:09)

视频：

4-3 葵花宝典：什么是依赖注入(DI)&amp;控制反转IoC (11:36)

视频：

4-4 nestjs 架构篇：控制器、服务、数据访问(非常重要) (08:30)

视频：

4-5 nestjs 架构篇：用模块来组织代码 (09:34)

视频：

4-6 加餐：DTO，DAO是什么?MVC是什么架构? (13:43)

视频：

4-7 \[工作原理\]Nestjs中的DI系统&amp;DI容器的概念 (08:05)

第5章 NestJS多环境配置与管理【通用模块与实战】5 节 | 54分钟

开发一个通用 NestJS 模板项目，专注多环境配置与管理。探讨通用后端框架设计，比较多环境配置方案，使用官方 config 模块进行设置及读取，并引入 Joi 进行配置参数验证

视频：

5-1 nestjs通用后端框架思考 (07:33)

视频：

5-2 多环境配置两种方案(优缺点比较) (14:59)

视频：

5-3 官方方案：使用config设置配置模块- (09:36)

视频：

5-4 官方方案进阶：多环境配置读取 (09:12)

视频：

5-5 配置文件的参数验证Joi方案 (12:11)

第6章 日志管理与异常处理【通用模块与实战】6 节 | 67分钟

日志管理与异常处理，介绍日志类型与功能分类，深入讲解 NestJS 内置的 Logger 模块及 Pino、Winston 等高性能日志模块。通过实战作业，结合全局异常过滤器记录日志，探讨如何集成并优化日志记录方案。

视频：

6-1 日志有哪些类型?功能分类?记录位置? (09:57)

视频：

6-2 nestjs内置日志模块Logger (07:06)

视频：

6-3 全自动高性能日志模块：Pino、日志滚动pino-roll (11:43)

视频：

6-4 高度集成的日志模块：winston (17:46)

视频：

6-5 \[作业\]全局异常过滤器：配合winston记录日志(全局Filters) (17:25)

视频：

6-6 作业解答：全局FIilters&amp;如何获取请求IP (02:40)

第7章 集成通用模板、优化打包性能【通用模块与实战】4 节 | 55分钟

集成通用模板并优化打包性能，配置全局模块和日志，设置过滤器、CORS、API 前缀。开启 SWC 编译器和 Jest 测试，提升性能并对比 Vitest

视频：

7-1 通用模板项目：配置模块 (11:08)

视频：

7-2 通用模板项目：全局日志模块 (12:21)

视频：

7-3 全局设置：开启filters、CORS、API请求前缀+版本 (14:41)

视频：

7-4 开发起飞：开启swc编译器+jest测试配置(对比vitest) (16:44)

第8章 nestjs中高速缓存方案及集成Redis【通用模块实战】5 节 | 51分钟

掌握 NestJS 中的高速缓存解决方案Redis+Cache，帮你构建高效稳定的应用。

视频：

8-1 redis常见问题及Node.js侧客户端比较 (10:02)

视频：

8-2 两种redis镜像对比&amp;redis桌面端连接工具 (09:04)

视频：

8-3 如何nestjs中集成ioredis (07:47)

视频：

8-4 高速缓存方案cache-manager (16:04)

视频：

8-5 nestjs集成cache-manager与ioredis (07:11)

第9章 第三方服务模块：常见短信、邮件服务对接【通用模块实战】2 节 | 19分钟

掌握 NestJS 中的第三方服务对接模块，学习集成商业化邮件服务(SES、Mailgun、SendCloud)和内置的邮件服务 mailer，并完成与腾讯云短信服务的对接，打造完善的通知功能

视频：

9-1 商业化邮件服务商(SES、Mailgun、SendCloud) (03:31)

视频：

9-2 Nestjs中的邮件服务(内置node-mailer) (15:05)

第10章 【进阶架构设计】Nestjs针对复杂企业应用场景架构设计1 节 | 22分钟

理解复杂企业应用中的架构设计，学习架构师的核心能力，明确系统与应用架构分类，并通过项目需求分析，深入了解从需求到实施的完整开发流程，为后续模块设计做好准备

视频：

10-1 架构师能力：架构设计是什么?深入理解架构设计 (21:17)

第11章 数据库策略：Nestjs数据库集成策略与多租户数据库策略8 节 | 106分钟

简化NestJS数据库集成策略与多租户设计，学习ORM选择，集成Prisma、TypeORM、MongoDB，理解动态模块与数据库架构设计，优化多ORM和数据连接池配置

视频：

11-1 数据库模块集成分析：ORM选择 (12:35)

视频：

11-2 nestjs如何拿捏单库vs多库(多租户)：复杂业务场景数据库选择 (12:18)

视频：

11-3 Prisma与nestjs集成 (12:25)

视频：

11-4 typeorm与nestjs集成 (07:56)

视频：

11-5 非关系型数据库mongoDB集成(深入工作原理) (22:20)

视频：

11-6 动态模块应用场景及工作原理 (16:19)

视频：

11-7 \[重要\]数据库架构设计&amp;nestjs多ORM动态数据库演示 (15:53)

视频：

11-8 \[扩展\]数据连接池及常见ORM库配置 (05:35)

第12章 多租户复杂数据库设计：TypeORM多数据库集成与优化8 节 | 79分钟

优化 TypeORM 多数据库集成，掌握多数据库配置、初始化及动态连接，抽象公共 Repository，解决多 MySQL 和多数据库类型的连接问题，并优化实例共享与销毁。

视频：

12-1 \[回顾\]ORM库多数据库配置&amp;连接 (05:08)

视频：

12-2 多数据库初始化：TypeORM CLI配置(结合ormconfig) (12:44)

视频：

12-3 TypeORM同类型多数据库连接与访问配置 (05:39)

视频：

12-4 抽象公共Repository：解决多数据库请求响应 (08:08)

视频：

12-5 Controller控制器的参数解析装饰器(@Param、@Body、@Query ) (08:11)

视频：

12-6 TypeORM动态连接多数据库：多MySQL (08:10)

视频：

12-7 TypeORM动态连接多数据库：多数据库类型 (11:27)

视频：

12-8 \[进阶\]TypeORM模块优化：多数据库连接共用实例、销毁 (18:42)

第13章 多租户复杂数据库设计：Prisma模块与RxJS的高级应用10 节 | 131分钟

学习 Prisma 模块与 RxJS 的高级应用，掌握 Prisma 多 Client 实战和模块初始化优化，深入理解 RxJS 事件处理及常见操作符，优化自定义动态模块PrismaModule命名与断线重试逻辑，完成异步 Provider 和自定义模块的进阶应用

视频：

13-1 PrismaModule初始化代码结构(学习官方模块TypeORM) (21:59)

视频：

13-2 Prisma多Client实战(generator指定output目录) (18:40)

视频：

13-3 \[扩展\]认识Rxjs：一个处理事件是Lodash库 (11:17)

视频：

13-4 \[作业\]Rxjs示例：计时器、常见操作符等 (11:59)

视频：

13-5 多数据库优化：如何命名PrismaModule (07:44)

视频：

13-6 多数据库优化：断线重试逻辑 (16:00)

视频：

13-7 动态模块进阶：异步Provider (18:41)

视频：

13-8 动态模块进阶：完成自定义PrismaModule模块 (06:54)

视频：

13-9 PrismaModule：测试异步多数据库连接 (04:57)

视频：

13-10 数据库优化：PrismaModule连接实例管理 (12:10)

第14章 扩展模块：Mongoose官方模块问题解决与扩展2 节 | 27分钟

解决 Mongoose 官方模块中的常见问题，学习如何扩展第三方模块并复用 Mongoose 实例，提升模块的灵活性和可维护性

视频：

14-1 Mongoose官方模块的问题及解决思路 (09:23)

视频：

14-2 如何扩展第三方模块：复用Mongose实例 (16:58)

第15章 数据库策略优化：多数据库与多租户策略总结5 节 | 66分钟

总结多数据库与多租户策略，优化数据库代码，抽象 Repository 层，实现多 ORM 配合，分析 mongo 模块异常处理，创建 userModule 作为最佳实践

视频：

15-1 数据库总结：多数据库多租户多ORM (12:17)

视频：

15-2 数据库代码初步优化：实现抽象层repository (20:43)

视频：

15-3 数据库代码优化测试：多ORM配合 (18:30)

视频：

15-4 \[源码分析\]mongo模块forFeature方法的异常处理 (02:42)

视频：

15-5 \[最佳实践\]数据库代码优化：创建userModule (11:19)

第16章 鉴权登录：NestJS用户认证与参数校验【安全与权限管理】9 节 | 111分钟

学习 NestJS 用户认证与参数校验，涵盖创建认证控制器、用户校验、JWT模块安装与模块解析、内置与自定义管道应用，掌握两种常见的本地化和JWT的认证流程

视频：

16-1 nestjs用户认证：创建认证控制器及对接数据 (15:13)

视频：

16-2 创建用户：用户数据简单校验 (05:33)

视频：

16-3 \[回顾\]管道概念：三大类型管道及校验类管道 (07:34)

视频：

16-4 接口参数校验：nestjs 基于装饰器的类验证器管道 (11:17)

视频：

16-5 \[进阶\]nestjs内置管道&amp;Trasnform&amp;自定义管道用法 (14:12)

视频：

16-6 nestjs鉴权库：JWT核心文档解析 (16:06)

视频：

16-7 \[过渡\]解析官方示例：LocalStrategy与JwtStrategy (08:39)

视频：

16-8 JWT依赖安装&amp;jwt模块工作原理解析 (15:58)

视频：

16-9 \[进阶\]测试jwt模块：应用守卫AuthGuard、jwtService签名Payload (15:29)

第17章 鉴权守卫与高级访问权限管理【安全与权限管理】2 节 | 33分钟

学习 NestJS 鉴权守卫与高级访问权限管理，设置用户访问控制，深入探讨控制器守卫的实现方式，掌握自定义装饰器与全局守卫的创建和应用

视频：

17-1 鉴权守卫：设置鉴权用户可访问的控制器(作业) (20:53)

视频：

17-2 \[进阶\]控制器守卫、自定义装饰器、全局守卫两种创建方式 (11:22)

第18章 接口安全：密码保护与数据脱敏【安全与权限管理】5 节 | 58分钟

学习接口安全，涵盖密码加密技术(包括彩虹表攻击防护与 argon2 加密)、数据脱敏处理、内置序列化拦截器的使用，以及通过自定义装饰器完成接口的序列化操作，保障数据安全

视频：

18-1 密码安全及相关知识(什么是彩虹表攻击) (09:07)

视频：

18-2 密码安全实操：使用argon2库对密码进行加密 (08:48)

视频：

18-3 接口安全：引入拦截器对接口进行脱敏处理 (15:22)

视频：

18-4 接口安全：内置序列化拦截器定制响应数据结构 (08:22)

视频：

18-5 拦截器扩展：自定义装饰器完成接口序列化 (16:12)

第19章 RBAC系统设计与实现：角色权限管理【安全与权限管理】11 节 | 157分钟

学习 RBAC 系统设计与实现，涵盖权限控制数据设计、角色权限功能分析、Prisma 数据库同步与迁移、用户角色 CRUD 操作、嵌套数据序列化及 RBAC 守卫的完整闭环实现

视频：

19-1 权限控制导学：权限控制数据设计(预习作业) (08:29)

视频：

19-2 RBAC角色权限功能分析 (05:33)

视频：

19-3 RBAC角色权限实现：prisma数据库调整(同步、迁移、重置) (12:30)

视频：

19-4 RBAC角色权限实现：创建角色权限装饰器 (19:56)

视频：

19-5 RBAC角色权限实现：用户角色CURD操作 (17:31)

视频：

19-6 \[进阶\]RBAC角色权限实现：用户创建&amp;关联角色 (15:04)

视频：

19-7 作业讲解：Role关联查询Permission&amp;拦截器序列化输出 (10:28)

视频：

19-8 作业讲解：用户相关查询及序列化输出 (11:27)

视频：

19-9 \[进阶\]用户更新接口：嵌套数据的序列化 (16:43)

视频：

19-10 \[进阶\]完成用户更新逻辑(嵌套关联关系) (14:23)

视频：

19-11 \[重要\]完成RBAC守卫(RBAC闭环-企业级应用实现) (24:13)

第20章 CASL策略权限控制与实践【安全与权限管理】3 节 | 27分钟

学习 CASL 策略权限控制，介绍流行的 CASL 策略库，实践基于策略的权限控制，掌握自定义规则的两种实现方式，灵活管理权限策略

视频：

20-1 基于策略的控制：流行的casl策略库介绍 (10:29)

视频：

20-2 基于策略的权限控制：实践casl库 (07:43)

视频：

20-3 \[补充说明\]casl自定义规则的两种方式 (08:11)

第21章 高级策略权限设计与实现【安全与权限管理】16 节 | 213分钟

学习高级策略权限设计与实现，涵盖基于策略的数据权限分析，创建 Policy 服务与守卫，实现复杂查询与函数式策略控制，优化 CASL 服务及不同类型 Ability 实例的权限测试

视频：

21-1 \[重要\]数据库设计：基于策略的数据权限分析 (09:40)

视频：

21-2 策略权限控制：创建Policy服务&amp;守卫 (19:30)

视频：

21-3 策略权限控制：类MongoDB的复杂查询逻辑(精确的条件控制) (18:30)

视频：

21-4 \[进阶\]策略权限控制：基于函数的策略权限控制 (08:31)

视频：

21-5 \[优化代码\]创建基于casl的策略权限控制服务 (14:38)

视频：

21-6 工厂函数创建不同类型的Ability实例及权限测试 (06:52)

视频：

21-7 策略权限：数据库设计 (08:46)

视频：

21-8 \[作业\]策略权限功能：RolePolicy创建服务 (14:45)

视频：

21-9 \[更新\]Permission与Role更新Policy逻辑 (15:15)

视频：

21-10 \[重要\]PolicyGuard的判断逻辑 (07:31)

视频：

21-11 \[重要\]PolicyGuard具体实现逻辑 (16:14)

视频：

21-12 \[非常重要\]策略权限守卫开发分析：参数约定与数据准备工作 (15:39)

视频：

21-13 策略权限守卫：初步完成核心逻辑&amp;准备测试数据 (16:24)

视频：

21-14 策略权限守卫：测试默认的策略权限的三种逻辑 (19:26)

视频：

21-15 策略权限守卫：验证函数&amp;mongo复杂查询 (12:48)

视频：

21-16 策略权限控制总结 (07:33)

第22章 菜单权限设计与实现【业务开发】5 节 | 78分钟

学习菜单权限设计与实现，进行需求分析，创建数据库模型和 REST 接口，完成菜单及嵌套菜单的数据查询、更新与删除操作，设计角色与菜单的权限关联

视频：

22-1 菜单权限：需求分析+创建数据库模型+REST接口 (08:45)

视频：

22-2 创建菜单接口&amp;数据库查询实现(嵌套数据) (23:15)

视频：

22-3 菜单查询与删除(创建自定义Pipe) (15:55)

视频：

22-4 菜单及嵌套菜单数据更新 (16:12)

视频：

22-5 菜单权限：角色菜单关联(新增、更新、删除) (13:19)

第23章 核心业务管理与数据库迁移策略【数据迁移】10 节 | 120分钟

学习核心业务管理与数据库迁移策略，掌握数据库迁移流程、版本控制、合理项目结构设计，结合 CLI 生成业务模块代码，使用 AI 快速创建 CURD 服务，解决复杂业务关联与事务嵌套问题，扩展交易和内容服务开发

视频：

23-1 数据库迁移流程&amp;代码版本控制 (05:42)

视频：

23-2 \[最佳实践\]合理的项目工程目录 (09:22)

视频：

23-3 业务数据库设计+CLI生成模块代码 (09:36)

视频：

23-4 \[AI加持\]开发流程介绍：快速创建CURD基础业务代码 (08:50)

视频：

23-5 \[进阶\]创建附件接口：复杂创建逻辑与关联dto的创建 (23:26)

视频：

23-6 内容相关需求分析：课程&amp;标签&amp;分类关联关系 (05:42)

视频：

23-7 内容相关开发：创建课程&amp;标签路由+CURD服务 (13:50)

视频：

23-8 内容相关开发：如何复用课程标签创建逻辑 (20:23)

视频：

23-9 内容相关开发：完成课程+标签嵌套CURD(事务嵌套bug) (13:39)

视频：

23-10 \[总结\]核心业务服务开发与扩展(交易、内容)数据库设计 (08:43)

第24章 定时任与队列管理：高并发策略【进阶实战】17 节 | 192分钟

扩展章：学习高并发场景下的定时任务与队列管理策略，扩展日志功能并集成 winston-mongoDB，掌握定时任务和 SSH 模块的注册与异步逻辑，实现任务队列管理和定时队列通知，优化队列任务生命周期管理

视频：

24-1 日志功能扩展：收集与筛选日志需求 (08:00)

视频：

24-2 日志数据库存储方案：winston-mongoDB(集中式、自滚动) (19:03)

视频：

24-3 数据库日志：存储&amp;维护机制思考 (08:23)

视频：

24-4 定时任务：nestjs-schedule模块注册与源码解析 (07:48)

视频：

24-5 \[优化\]重构条件模块代码&amp;容器中mongoDB备份与恢复 (11:26)

视频：

24-6 容器数据持久化的两种方法+node侧ssh客户端ssh2 (07:33)

视频：

24-7 SSH模块注册与异步注册核心逻辑 (13:22)

视频：

24-8 创建ssh客户端SshService服务&amp;测试 (15:04)

视频：

24-9 多ssh客户端注册及配置方法 (06:53)

视频：

24-10 \[代码重构\]异步SSH模块注册&amp;测试 (09:35)

视频：

24-11 定时任务：完成容器数据库备份与滚动删除 (17:31)

视频：

24-12 \[重构\]SshService输出结构优化&amp;捕获异常 (04:26)

视频：

24-13 三类定时任务管理模块 (16:07)

视频：

24-14 任务队列：nestjs中的队列方案nestjs-bull (13:07)

视频：

24-15 代码重构：合理规划Queue分类 (05:23)

视频：

24-16 定时队列任务：定义不同的通知处理逻辑(邮件&amp;短信) (15:20)

视频：

24-17 \[进阶\]队列任务的生命周期事件 (12:27)

第25章 Mongorepo技术栈选型：nestjs工程化与自动化方案4 节 | 69分钟

学习Monorepo技术栈选型，掌握Monorepo工程化的基础导学，了解 Nx、Lerna等常见工具的差异与适用场景

视频：

25-1 Monorepo项目导学 (16:31)

视频：

25-2 monorepo技术栈：三类工具+nx&amp;lerna&amp;rush&amp;bit等介绍 (14:33)

视频：

25-3 包管理方案1：yarn的workspaces方案 (20:44)

视频：

25-4 包管理方案2：使用pnpm管理workspace (16:56)

第26章 Lerna&amp;nx与TurboRepo深度解析+云缓存实践7 节 | 102分钟

解析 Lerna、Nx 与 TurboRepo 的自动化与云缓存方案，学习版本控制、缓存机制，并探索 Nx Cloud 和 Vercel 的远程缓存优化与 Azure 协作构建提升团队效率

视频：

26-1 大型项目管理模式实践：nx+lerna+turborepo介绍&amp;云构建是什么? (18:20)

视频：

26-2 lerna全面解析：常用命令、版本控制与发包 (21:35)

视频：

26-3 turborepo上手：缓存、运行脚本与lerna横向对比 (12:18)

视频：

26-4 \[扩展\]turborepo远程缓存使用流程(vercel配合) (10:58)

视频：

26-5 \[扩展\]lerna&amp;nx远程缓存：基于nx cloud协同项目+加速构建 (10:49)

视频：

26-6 \[扩展\]nx cloud扩展能力(agents等) (06:55)

视频：

26-7 nx团队协同提效：使用azure存储构建缓存(申请、配置、权限) (21:00)

第27章 开发与发布nx生态插件(全流程案例)14 节 | 176分钟

开发与发布 Nx 生态插件，集成七牛云、华为云，优化云缓存插件的逻辑与上传下载流程，并通过 Github Actions 实现自动化发包和插件发布

视频：

27-1 开发自定义nx云缓存插件：七牛云、华为云等产品比较 (11:46)

视频：

27-2 对象云存储nx扩展插件需求分析 (09:01)

视频：

27-3 七牛云SDK文件操作(查询、上传、下载) (17:41)

视频：

27-4 Nx七牛云缓存插件开发：monorepo项目设置&amp;传参 (22:04)

视频：

27-5 Nx七牛云插件开发：下载、上传构建缓存 (18:05)

视频：

27-6 优化uploadToken产生逻辑，加入本地缓存 (14:16)

视频：

27-7 开发插件调试思路：从源头找问题(翻译、本地调试、问他人) (13:01)

视频：

27-8 下载优化：兼容私有与公有传参 (07:24)

视频：

27-9 上传优化：调整uploadToken更新策略 (14:54)

视频：

27-10 上传区域参数测试 (04:59)

视频：

27-11 \[扩展\]七牛云配置自定义的域名 (08:53)

视频：

27-12 \[AI\]发包准备：nx七牛云插件文档 (11:38)

视频：

27-13 Github Actions自动化发包流程：npm包发布&amp;测试 (12:01)

视频：

27-14 \[作业\]开发nx扩展：monorepo项目总结 (09:53)

第28章 微服务与微前端：概念与工具【微服务架构】3 节 | 32分钟

学习微服务与微前端的基础概念，回顾分布式系统架构，并推荐 Node.js 微服务工具包，理解其在实际应用中的场景。

视频：

28-1 \[回顾\]什么是微服务?应用场景是什么? (11:48)

视频：

28-2 \[回顾\]分布式系统&amp;架构 (11:05)

视频：

28-3 Node.js侧的微服务工具包推荐(熔断、链路追踪、监控) (08:25)

第29章 NestJS中的微服务实践与应用案例【微服务架构】7 节 | 64分钟

学习 NestJS 微服务的实践与应用，探索微服务方案、TCP通信、常用装饰器、项目工程化配置，掌握容器化部署、事件广播消息传递及超时和错误处理机制

视频：

29-1 nestjs中的微服务方案 (06:24)

视频：

29-2 \[TCP方式\]初次尝试Nestjs中的微服务 (08:39)

视频：

29-3 Nestjs微服务中的常用装饰器 (05:35)

视频：

29-4 微服务项目工程化配置：合理的工程目录 (12:52)

视频：

29-5 微服务容器化及打包部署流程 (15:49)

视频：

29-6 nestjs微服务：Event-based广播式消息传递 (05:12)

视频：

29-7 微服务超时逻辑及错误异常处理 (08:55)

第30章 nestjs中的微服务治理：熔断控制原理深入解析【微服务架构】3 节 | 36分钟

深入解析 NestJS 中的微服务治理，学习服务熔断工作原理及断路器模型，结合 Opossum 库，了解如何在 Node.js 中实现断路器机制并进行熔断控制

视频：

30-1 服务熔断工作原理(断路器、断路模型等) (06:39)

视频：

30-2 熔断器工作原理&amp;最小示例实现 (21:44)

视频：

30-3 opossum库Node.js侧的断路器 (06:58)

第31章 高效Nestjs微服务通信：gRPC实战【微服务架构】13 节 | 169分钟

学习高效 NestJS 微服务通信，使用 gRPC 实现双端通信，掌握 proto 转 TypeScript 方案、SSL 配置、服务测试与工程化，完成核心业务拆分与微服务模板项目创建，并借助 gRPC 工具生成代码

视频：

31-1 使用gRPC进行微服务通信(2种proto转ts的方案) (19:01)

视频：

31-2 gRPC微服务进阶：配置SSL证书 (16:36)

视频：

31-3 测试gRPC服务第二种方案：grpcurl(go环境配置) (09:56)

视频：

31-4 测试gRPC服务第三种方案(grpc-tools+ts-proto) (22:10)

视频：

31-5 微服务工程化：共享grpc的proto与certs (23:05)

视频：

31-6 核心业务拆分分析 (10:23)

视频：

31-7 微服务模板项目创建+配置vscode插件 (06:33)

视频：

31-8 \[插件推荐\]定义user.proto并测试服务 (10:51)

视频：

31-9 \[扩展\]对于空值的处理&amp;VSCode插件bug (04:48)

视频：

31-10 用户微服务：完成数据库对接与服务测试 (08:50)

视频：

31-11 网关微服务：登录接口&amp;服务调用测试 (16:44)

视频：

31-12 \[代码生成器\]借助grpc-tools产生nestjs双端代码 (15:26)

视频：

31-13 微服务拆分总结 (04:25)

第32章 nestjs中的微服务治理：服务注册中心consul【微服务架构】14 节 | 164分钟

学习 NestJS 中的微服务治理，解析服务注册中心 Consul 的核心作用，掌握容器化创建 Consul 服务、微服务注册与健康检查、gRPC 服务连接，以及 RxJS 优化 gRPC 客户端的高可用性实现

视频：

32-1 构建高可用架构：注册中心的核心作用解析 (04:33)

视频：

32-2 常见的5种注册中心技术方案 (11:51)

视频：

32-3 容器化方式快速创建consul服务 (10:50)

视频：

32-4 使用Consul实现NestJS微服务注册与健康检查 (13:05)

视频：

32-5 NestJS与Consul配置并连接gRPC服务 (12:45)

视频：

32-6 微服务项目monorepo改造，加入版本控制 (12:41)

视频：

32-7 优化微服务共享项目：ts-proto与自定义工具的封装指南 (13:50)

视频：

32-8 \[小结\]微服务改造monorepo需要注意的几点 (03:36)

视频：

32-9 consul与健康检查：获取健康实例逻辑分析 (05:04)

视频：

32-10 高效微服务：定时器驱动的Consul健康检查与gRPC Client管理 (19:17)

视频：

32-11 高可用实践：优化测试动态grpc客户端切换 (19:33)

视频：

32-12 高可用实践：使用RxJS优化gRPC客户端更新机制 (13:47)

视频：

32-13 高可用实践：nestjs拦截器处理微服务异常+重试请求 (16:23)

视频：

32-14 边界异常处理：定时重试请求健康的服务 (06:15)

第33章 nestjs中的微服务治理：健康检查方案【微服务架构】5 节 | 74分钟

学习 NestJS 微服务健康检查方案，集成 gRPC 健康检查，通过 Terminus 创建健康检查端点，优化微服务代码，提炼 HealthModule 并支持多端点的动态健康检查配置

视频：

33-1 gRPC服务健康检查：扩展health.proto (08:19)

视频：

33-2 实现User微服务健康检查：gRPCHealth完整集成 (14:22)

视频：

33-3 优化微服务代码：提炼HealthModule到共享模块 (06:23)

视频：

33-4 使用Terminus创建健康检查Endpoint并集成Consul (24:34)

视频：

33-5 动态健康检查：在.env中配置多微服务健康检查端点 (19:24)

第34章 微服务架构优化与高可用实现14 节 | 177分钟

介绍微服务架构优化与高可用性实现，涵盖多 Consul 实例管理、故障转移演示、健康检查拆分、多数据中心配置、gRPC 客户端管理、重试逻辑及微服务高可用性保障的实现与优化

视频：

34-1 \[高可用\]管理多个ConsulService实例 (06:18)

视频：

34-2 \[高可用\]Consul服务+Nestjs微服务高可用问题分析 (09:04)

视频：

34-3 \[高可用\]Consul+nestjs微服务故障转移演示 (05:16)

视频：

34-4 \[准备\]拆分health健康检查逻辑 (10:24)

视频：

34-5 \[准备\]consul配置多datacenter及互访 (08:49)

视频：

34-6 \[准备\]配置user2微服务对接datecenter2及测试 (11:56)

视频：

34-7 拦截器重试逻辑改造 (14:40)

视频：

34-8 创建ConsulCoreModule：管理Consul实例与ConsulService实例 (15:12)

视频：

34-9 \[重构\]统一管理：初始化grpcClient (22:50)

视频：

34-10 \[测试\]依赖注入微服务实例grpcClient (11:26)

视频：

34-11 \[重构\]微服务调用异常统一捕获与处理 (11:30)

视频：

34-12 调试统一错误处理&amp;异常拦截器逻辑 (13:36)

视频：

34-13 \[重要\]高可用：如何实现微服务故障转移 (23:20)

视频：

34-14 \[测试&amp;总结\]配合Consul实现微服务高可用 (12:34)

第35章 私有制品库：定制化的仓库与流水线策略【打包部署】3 节 | 36分钟

介绍私有制品库的定制化方案，涵盖 Docker 本地镜像仓库配置、企业级 Harbor 方案、npm 私有仓库 Verdaccio，以及 Jenkins CICD 流水线的进阶实现策略，优化打包与部署流程

视频：

35-1 镜像仓库本地化方案registry(配置docker-hub代理) (12:41)

视频：

35-2 \[进阶\]企业级镜像仓库方案harbor (12:02)

视频：

35-3 \[扩展\]npm私有化仓库方案-verdaccio (10:36)

第36章 nestjs项目部署：Docker方案【打包部署】11 节 | 147分钟

介绍 NestJS 项目的 Docker 部署方案，涵盖国内加速源配置、项目打包与容器化部署，优化 Docker 镜像构建与运行，包括权限安全、镜像体积优化及 Node.js 容器化方案，实现高效稳定的部署流程

视频：

36-1 部署方案一：pm2部署Node.js项目 (13:08)

视频：

36-2 项目实操：使用pm2部署课程项目 (11:24)

视频：

36-3 部署方案二：Docker容器化(两种应用场景) (09:17)

视频：

36-4 \[扩展\]如何创建镜像：Dockerfile语法&amp;多构建过程解读 (10:35)

视频：

36-5 镜像核心操作：创建镜像+镜像推送仓库&amp;拉取 (17:05)

视频：

36-6 镜像调试+镜像导出与恢复(离线部署方案) (11:29)

视频：

36-7 \[进阶\]镜像分阶段构建，优化镜像体积 (12:42)

视频：

36-8 \[进阶\] docker-compose入门：多个服务创建、启动与调试 (18:59)

视频：

36-9 \[进阶\] docker-compose创建多组服务(数据库+应用)+网络互通 (12:53)

视频：

36-10 \[进阶\]kubernetes环境：使用multipass创建k3s环境 (08:02)

视频：

36-11 \[进阶\]k8s中部署示例：应用+配置网络+环境变量 (20:52)