Nestjs框架: 数据库的多种选择,与单库和多库的分析

Nest.js Sequelize ORM到数据库(MySQL & PostgreSQL)示例 深入研究这个NestJS Sequelize教程,学习如何在NestJS中使用Sequelize创建一个示例数据库连接到PostgreSQL、MySQL和SQLite。NestJS允许您使用Node.js和TypeScript创建开箱即用的应用程序架构。它与Sequelize模块集成得很好。这样,您可以在代码中创建模型,Sequelize ORM会处理使用SQL数据库(如MySQL和PostgreSQL)的数据库操作。 阅读详情

数据库模块集成之ORM选择


1 )概述

  • NestJS 本身和数据库并无直接关联,它的底层使用 Express 或者 Fastify 来提供 HTTP 接口服务
  • 在数据库方面,NestJS 使用 Node.js 端的一些驱动,也就是 NestJS 端的数据库驱动来与数据库进行对接。
  • 不过,它更推荐使用一些 ORM(对象关系映射)库来与数据库对接
  • 主要原因在于,这些 ORM 库能够与各式各样的数据库进行对接,做到“开箱即用”(out of the box)
  • 我们无需根据不同的驱动或者不同的数据库去定制不同的逻辑代码
  • 官方指出,市面上有不少值得推荐的 ORM 库,像 MikroORM、Sequelize、Knex.js、TypeORM 和 Prisma 等
  • 同时,官方还推出了几个中间件库,如 @nestjs/typeorm、@nestjs/mongoose 等
  • 此时,我们就需要思考到底选用哪一款 ORM 库,哪一款在后续开发中能为我们节省大量工作

2 ) ORM 库的选择

  • NestJS 官方不推荐直接使用 Node.js 端的驱动,而是推荐使用 ORM 库,主要目的就是这些 ORM 库可以实现一个 ORM 对接多个数据库

  • 就拿官方推荐的 TypeORM 来说,打开 TypeORM 官方网站,在左侧菜单有个“DataSource Options”,其中关于“type”的部分,明确写着 TypeORM 可以与多种类型的数据库对接,常见的有 MySQL、PostgreSQL、SQLite、MariaDB、Oracle 等,甚至还包括 MongoDB 等

  • 另外,Prisma 也是非常推荐的,它同样能与各式各样的数据库对接。在 Prisma 的官方网站上,对于它支持的数据库类型和版本都有详细描述,包括 MongoDB、PostgreSQL、MySQL 以及 SQL Server 等,这些都是很常见的数据库

  • 不同的 ORM 库之间是存在区别和侧重的,所以在选择时,有几个要点需要考虑,虽然 ORM 库是更高层面的抽象和封装,能让一套代码操作不同的数据库,可针对不同用户的应用场景进行数据库对接,比如有的用户购买了商业化授权的 Oracle 数据库,有的使用付费版的 PostgreSQL、MySQL,还有的使用免费的 MySQL,这些情况都有可能

  • 因此,我们选择时要兼容最多的场景,同时还要考虑该 ORM 库在兼容这些场景后的稳定性、后续扩展性以及社区支持情况

  • 这和我们平时挑选 NPM 上的第三方包的策略很相似,大家可以去相关 ORM 库的官方网站看看,也可以参考 NPM 上的下载量

  • 很多 ORM库,比如:MicroORM 这类,像 Sequelize、TypeORM、Prisma,Mongoose

  • 虽然严格来说,Mongoose 不算传统意义上的 ORM 库,但它是与 MongoDB 对接的优秀驱动

  • 相比之下,Mongoose 在与 MongoDB 对接时表现出色。目前,TypeORM 仅支持 MongoDB 的部分版本,Prisma 支持 MongoDB 4.2 及以上版本

  • 从官方给出的表格能看到,对于 MongoDB 版本要求是 4.2 以上。对于一些老系统,若使用的是 MongoDB 4.0 版本,Prisma 就无法支持,此时就必须使用 Mongoose,而且 Mongoose 支持的操作方法更全面

  • 以 Prisma 官方介绍的“database features matrix”为例,它支持事务、索引等常见属性,但也有一些不支持的功能,比如聚合管道(aggregation pipeline),这在编写复杂的 MongoDB 查询时非常重要,Prisma 不支持这一点比较可惜

  • 我们试图在 NestJS 官方推荐的这些 ORM 库中找到一个万能的 ORM 库,但目前来看,TypeORM 虽比较接近我们的使用场景,但在操作 MongoDB 方面,还是不如 Mongoose

  • 不过,这两者对常见的关系型数据库支持都很好。在 TypeORM 官方网站搜索 MongoDB 会发现,它虽支持 MongoDB,但指定的是特定版本(experimental),而现在 MongoDB 已经更新到 7.x 版本,如果只能安装 5.x 版本的驱动,就无法对接 6.x、7.x 版本

  • 有的同学可能想把 TypeORM 和较新的 MongoDB 版本集成,但搜索相关 issues 会发现有很多坑点,所以不建议这么做

  • 如果使用 Mongoose 对接 MongoDB,就意味着需要维护两套代码,一套是 Mongoose 对应 MongoDB 的 Schema,另一套是 TypeORM 或 Prisma 的实体类,这就需要我们进行权衡考量

  • 权衡点主要有:一是是否需要对接 MongoDB 数据库;二是对接的 MongoDB 数据库版本是多少;三是如果对接 MongoDB 数据库,是否需要使用其进阶特性。

  • 如果不需要对接 MongoDB 数据库,或者只是可能会对接但不使用其进阶特性,那么可以考虑使用 Prisma,因为它能涵盖市面上绝大多数应用场景的数据库;如果觉得 Prisma 涵盖的场景不够,也可以考虑 TypeORM,但这会带来权限问题,因为它们定义数据库连接和使用的方式不同,可能需要在 ORM 库与数据库操作层面或逻辑层面写一层新的封装,封装常见的数据库操作方法,如根据 ID 查询、查询所有、删除、更新等

  • 一般来说,我们的业务系统大多只对接一种类型的数据库,要么是关系型数据库,要么最多扩展到 Redis 这种非关系型数据库。不过,也有一些特殊场景可能需要对接多种数据库,比如跨系统升级时,需要从老旧系统读取数据;还有低代码类型项目,需要让用户使用自己本地不同版本的数据库,这时就需要 ORM 库的支持

  • 后续我们会将 Prisma、TypeORM 以及 Mongoose 集成到我们自己的项目中,但在业务代码层面,不会同时使用这三者,主要有以下三点原因

    • 第一,同时支持这三者代码量会非常大,因为 Prisma 需要定义 Schema,TypeORM 需要定义实体类,Mongoose 需要针对 MongoDB 设计对应的 Schema,且它们之间并不通用
    • 第二,Prisma、Mongoose 和 TypeORM 官方文档都比较全面,我们后续的业务会基于其中一个方案进行扩展,如果需要扩展到其他方案,可以参考官方文档
    • 第三,这三者支持的数据库各有侧重,在通用模块项目中,我们虽要考虑支撑市面上所有数据库类型,但不能本末倒置,要考虑投入产出比,因为我们的使用场景大多只对接一种数据库,即便考虑分布式数据库,也可能是同一版本的数据库
  • 当我们既需要将数据存到关系型数据库,又需要存到像 MongoDB 这样的非关系型数据库时,官方文档给出了示例

  • 在官方的 database 部分有一个“multiple database”示例,我们既可以引入 TypeORM,也可以扩展 Prisma 或者对接 MongoDB

  • 这样一来,同一个项目中可能既存在 MongoDB 的 Schema,也存在 Prisma 的 Schema 和 TypeORM 的实体类,组织代码时就需要格外慎重,以免混淆

  • 在 NestJS 里连接数据库的方式和形式非常丰富,我们既可以在一个 NestJS 应用里对接多个数据库,甚至是多个不同类型的数据库

  • 这就是我们关于在通用模块项目中集成数据库模块的建议,我们后续对接数据库时,要明确自己的目标,项目是为了支撑后续业务开发,而不是纠结于覆盖所有数据库类型

NestJS 和 ORM 之间的关系

  • ORM 库是 NestJS 与数据库之间的桥梁,这里挑选了三个相对典型的 ORM 库
  • 对于 TypeORM 方案来说
    • 它支持的关系型数据库非常丰富,但对非关系型数据库的支持不太友好
  • 对于 Prisma 方案来说
    • 而 Prisma 操作数据库层面很方便,不过对关系型数据库的支持不够丰富
  • 对于 Mongoose 方案来说
    • 对非关系型数据库支持得非常好

在 NestJS 中应选择的哪种方案


  • 如果不谈业务只谈技术,那就是耍流氓。就像乔布斯所说,做产品要从业务需求出发
  • 所以在生产过程中,大家在这三者中做选择时,不用过于纠结
  • 因为根据自身业务场景,答案可能就已经明确了
  • 比如,若只是使用开源的 MySQL 方案,加上 TypeORM 或许就能解决问题
  • 若对 MySQL 没有版本需求,团队开发时对数据库操作层面没有精细化要求
  • 且需要方便的操作,那么 Prisma 就是首选

1 )TypeORM

  • 如果团队需要对接多种关系型数据库,其中还有客户指定的特殊数据库,或者有较旧的 MySQL 版本需要对接,那么毫无疑问应选择 TypeORM
    • 因为它对关系型数据库的支持非常全面,即使是较低版本也能很好地支持,其官方文档全面,生态也最完善
    • 在处理一对多、多对多关系,或是操作关键表时,可能会纠结关联字段和 ID 该放在哪一边,TypeORM 都有完善的文档可参考
    • 而且,若不想使用它的官方方法,还能使用原生 SQL 语句操作数据库,从这些方面来看,它无疑是 ORM 库中的“老大哥”

2 ) Prisma

  • Prisma 主要针对习惯写 TS 的小伙伴,它简化了数据库层面的操作,开发了 Prisma Client, 其中封装了数据库操作
  • 理解这些关键细节后,再看 TypeORM 以及 Prisma 官方对它们的介绍和代码,结合业务目的,就不会那么纠结了

3 )单库 和 多库的选择

  • 如果每天的数据量不大,在十万以内,选择单库方式就可以,那什么情况下选择多库,什么情况下对接多种数据库呢?
  • 有时候,对一种数据库(如 MySQL)进行读写分离,设置主从数据库即可,通常写操作是数据库的瓶颈,读操作则不是
  • NestJS 能很好地支持对接一种数据库的多库,带着这样的问题去看 NestJS 的官方文档,就不会对代码和技术方案感到陌生和堵心了
  • NestJS 是一个大而全的框架,涵盖了所有服务端开发的应用场景,大家可以针对自身业务在其生态中找到解决方案
  • 做技术的小伙伴要记住,学习和使用技术是为业务服务的,我们选择技术方案是对技术复杂度提升后应对的场景
  • 多库场景,可以定义多个数据库并命名,后续操作时用依赖注入的方式选择操作哪个数据库,例如,一个数据库用于写操作,另一个用于读操作
  • 读写分离通常能解决性能问题,主数据库一般用于写,从数据库用于读,数据库之间的同步问题通常可由数据库层面解决。若网络状况良好,同步问题基本能得到解决
  • 数据库集群一般依靠外部工具(如 K8s),通过容器化方式快速启动多个数据库实例,再加上数据库之间的同步和负载均衡,就能承载较大的业务系统

单库和多库优缺点

  • 在具体业务场景中,可针对某一种 ORM 库做具体选择,绝大多数场景是单库单 ORM
  • 下面分析下单库和多库的优缺点和应用场景。

单库

  • 优点:适用于对成本敏感、数据承载量不大、安全性要求不高的场景,成本较低。常用于小程序、公众号等需要快速开发和部署的应用场景
  • 缺点:可能受物理机硬件限制,导致性能和扩展性受限。若出现故障,存在数据丢失风险

多库

  • 应用场景:

    • 对自定义需求非常高,不同用户要求使用不同数据库(如 MySQL、MongoDB、Oracle 或 SQL Server)。
    • 一种数据库多库,可考虑用一个 ORM 对接
    • 大型业务场景,或对合规和法规要求严格,必须进行物理隔离时,需用多个 ORM 对接多种数据库
  • 优点:能满足复杂业务需求,不同类型数据库发挥各自优势。

  • 缺点:架构变得复杂,需了解多种数据库的操作、部署和维护方式

    • 有些数据库在本地
    • 有些在用户侧,尤其是低代码项目和数据敏感项目
    • 此外,还可能出现数据一致性问题,分布式读写需要加入事务处理,这较为复杂,且不同数据库对事务的支持情况不同
    • 如 MongoDB 在 4 版本之后才支持事务,老旧项目使用旧版本时需考虑数据库升级和迁移

通用框架,如何考虑涵盖单库和多库这两种场景

  • 第一步了解 NestJS 如何与这三个 ORM 库做基础对接, 第二步再深入探讨如何将它们融合到框架中
  • 以业务场景为例,探讨如下:

单、多库的选择

  • 如日记系统需分成多个租户,每个租户用单独字段做逻辑隔离,安全性要求不高、数据量适中,可使用单库场景
  • 若用户安全性要求高,需将素材采集的图片数据存放到自己的数据库,就采用多库场景

关系、非关系型 数据库选择

  • 通常,文件操作对非关系型数据库(如 MongoDB)友好,素材设备采集的动态数据也适合用非关系型数据库存储
  • 而用户管理系统等内容用关系型数据库更好
NestJS 实战:连接 MySQL、数据操作与接口文档配置 阅读详情

相关推荐

STM32平台下FreeModbus TCP协议栈集成指南

深入讲解在STM32平台如何移植和配置freemodbus协议栈,实现TCP通信功能。结合嵌入式开发细节,帮助开发者快速掌握freemodbus的应用与调试技巧。

weixin_36001279的博客 1144

NodeJS-NestJS:理解ORM(Object Relational Mapping)

ORM所生成的代码一般不太可能写出很高效的算法,在数据库应用上更有可能会被误用,主要体现在对持久对象的提取和数据的加工处理上,如果用上了ORM,程序员很有可能将全部的数据提取到内存对象中,然后再进行过滤和加工处理,这样就容易产生性能问题。总得来说,ORM的作用就是完成对象与关系型数据库的映射,封装底层与数据库的交互,并且很多都提供了强大的附加功能,比如持久化。但我们不能指望工具能一劳永逸的解决所有问题,有些问题还是需要特殊处理的,但需要特殊处理的部分对绝大多数的系统,应该是很少的。1、提高了开发效率。

snow的博客 1696

【四旋翼】pixhawk2.4.8-地面站配置-APM固件-四旋翼从装机到试飞

因为MP版本和APM版本的适配问题,真的真的是很大一个坑。最好先走别人走过的路,走通了再去自由发挥,不然白白浪费时间。下面提供我试飞成功过的版本。下面提供任意版本固件和地面站的下载方法。

xifan的博客 3万+

nestjs 优秀的ORM框架sequelize操作数据库

优秀的nestjs ORM框架比较--sequelize与typeorm 全网最新的使用ts的sequelize教程 TypeORM 是一个ORM框架,可以与 TS 和 JS(ES5,ES6,ES7,ES8)一起使用。 它的目标是始终支持最新的 JS 特性并提供额外的特性以帮助你开发任何使用数据库的应用程序 Sequelize 是一个基于 promise 的 Node.js ORM, 目前支持 Postgres, MySQL, MariaDB, SQLite 以及 Microsoft SQL Se

qq_38734862的博客 4795

上海交大计算机保研面试 2026:3类专项计划与10个联培方向深度解析

本文深度解析2026年上海交通大学计算机保研面试的3类专项计划与10个联培方向,包括区块链技术、智能计算系统和网络安全专项,以及蚂蚁科技、苏州智研院等联培基地。文章详细介绍了各专项的核心课程、硬件资源和就业去向,为计算机专业学生提供全面的申请策略和职业发展建议。

weixin_31528001的博客 397

YOLOv8中Anchor-Based、Anchor-Free及样本分配策略

本文主要介绍yolov8中的anchor机制与样本分配策略的静态策略和动态策略

qq_52889317的博客 2211

nest中的ORM

在 Nest.js 中执行 SQL 查询通常涉及使用 TypeORM 或 Sequelize 这样的 ORM(对象-关系映射)库。这些库使得在 Nest.js 应用程序中连接和操作 SQL 数据库变得更加简单和直观。在user模块中的service中;在user模块中的entites中;很明显没有使用sql语句,但是也完成了sql操作;

m0_47999208的博客 679

神经网络学习笔记-波尔兹曼(Boltzmann)机

Boltzmann机是一种反馈随机神经网络 两种输出状态,单极性0或1。输出状态的取值根据概率统计法则决定,这种概率统计法则类似Boltzmann分布,部分反馈 它在神经元状态变化中引入了统计概率,网络的平衡状态服从Boltzmann分布,网络运行机制基于模拟退火算法。 离散Hopfield神经网络+模拟退火+隐单元=Boltzman机 DHNN全反馈,转移函数:符号函数 BM机网络拓扑...

求易学堂的博客 2617

Nestjs框架: 数据库架构设计与 NestJS 多 ORM 动态数据库应用与连接池的配置

本文探讨了多租户系统中的数据库架构设计方案,分析了四种典型架构的优缺点和应用场景。架构1是单数据库简单方案,架构2通过ORM库对接多个数据库提升扩展性,架构3采用多ORM库对接动态数据库,架构4结合微服务实现租户隔离。文章指出架构选择需考虑安全性、性能、扩展性等因素,多租户系统需处理逻辑/物理隔离、多样性管理、迁移复杂性等问题。建议根据业务需求选择合适架构,并利用连接池等技术优化性能。系统架构设计应关注核心业务,通过技术倒逼学习提升架构能力。

Wang的专栏 854

水文仿真软件:HEC-RAS (Hydrologic Engineering Center‘s River Analysis System)_(7).一维非稳态水力模型

自定义脚本是通过编程语言(如 Python)编写的一系列自动化任务,可以帮助用户更高效地处理数据和运行模型。编写脚本:使用 Python 或其他编程语言编写自定义脚本。集成脚本:将脚本集成到 HEC-RAS 中,实现自动化数据处理和模型运行。

kkchenjj的博客 933

一篇把 Transport 做到可复制的实战指南:从 CTS 底层表到 LSMW、Variant、Layout、TABU、Query、SAPscript 全对象搬运

本文深入解析SAP系统中的Transport机制,将其视为可审计、可追溯的变更流水线。文章从CTS/Transport Organizer通用方法论和具体对象搬运手法两个层面展开,详细介绍了LSMW项目、程序Variant、屏幕/ALV Layout、表数据、ABAP Query、SAPscript和SO10标准文本等对象的传输策略。通过真实案例说明,代码对象往往能被正确传输,但"运行体验"和"业务配置"却常被遗漏,导致QAS测试正常而PRD环境异常。文章提供了一套可

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 178

秒杀入口流量防护方案-Nginx + NestJS + Redis 三层限流

Nginx + NestJS + Redis 三层限流层级特点Nginx最先拦截,防大水NestJS细粒度接口/用户限频Redis集群环境统一限流✅ 这样你的秒杀接口就能抗住几十万QPS的大流量冲击,并且还能细粒度控制。

Bruce__taotao的博客 1306

windows在使用ping 127.0.0.1时出现一般故障的解决方案

本文主要介绍了windows在使用ping 127.0.0.1时出现一般故障的解决方案,希望能对使用windows的同学们有所帮助。 文章目录 1. 问题描述 2. 解决方案

weixin_43178406的博客 7万+

ToolJet Helm 图表部署指南:Kubernetes 集群安装、values 参数与数据库初始化详解

本文基于 ToolJet 仓库中的 Helm 部署文档 [deploy/helm/README.md](https://link.gitcode.com/i/064a84376be0089641e0bf4db78830b9),完整讲解如何通过 Helm v3 将 ToolJet 社区版(CE)安装到 Kubernetes 集群:从 Chart 依赖、`helm install` 操作步骤,到 [v

gitblog_00916的博客 450

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

nodejs mysql 分表_数据库分库分表学习

大型网站数据库分库分表分库分表方案:垂直&水平1、什么是垂直拆分?指的是将一个包含了很多表的数据库,根据表的功能的不同,拆分为多个小的数据库,每个库中包含部分表。、垂直拆分的另外2种用途?1)、将一个包含了很多字段的大表拆分为多个小表,每个表中包含部分字段(基本很少遇到)2)、进行服务化(SOA)的改造,除了业务上需要进行拆分,底层的存储也需要进行隔离3、垂直拆分的好处?垂直拆分会使得单个...

weixin_31858863的博客 941

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

软件工程师能力跃迁:从写代码到定义问题的四层模型

在数字化深入产业各环节的今天,软件工程师的核心价值正从‘实现功能’转向‘定义问题’。其底层逻辑在于技术与业务耦合度持续加深,单一编程能力已无法应对高并发、多系统集成、实时数据治理等真实场景需求。理解分层能力模型(执行层→整合层→定义层→源头层)成为职业进化的关键路径,它揭示了市场对‘接口治理能力’‘业务翻译能力’和‘杠杆思维’的迫切渴求。尤其在制造业数字化、AIGC工程化、中小企降本增效等主流趋势下,具备跨系统协同经验与业务指标量化意识的工程师,正获得显著薪资溢价与项目主导权。本文基于三年一线招聘与交付数据

weixin_30832405的博客 351

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

AI时代全栈工程师的核心能力:从写代码到系统导演

全栈开发已超越前端+后端的技术叠加,本质是围绕数据流、控制流、状态流进行系统性决策的能力。随着AI编程工具普及,‘会写代码’不再是门槛,而对业务语义锚定、跨层问题归因、技术债量化评估等高阶能力需求激增。真正的全栈价值体现在需求转化为可演进系统契约的过程中——包括OpenAPI接口设计、服务间错误码体系、缓存与事务一致性策略等。在AI接管语法搬运的今天,人类不可替代的角色正转向系统韧性编排、架构翻译与端到端行为验证,这正是现代全栈工程师的技术护城河。

weixin_34284188的博客 428

Linux——mysql主从复制与读写分离

【代码】Linux——mysql主从复制与读写分离。

2401_88768957的博客 766

node js 连接数据库 (sequelize mysql2)

node js 连接数据库 (sequelize mysql2

callBack_____的博客 1349

Nest集成健康检查

健康检查(Health Check)是服务治理的基础能力,主要用于让运维平台、K8s、负载均衡、监控系统等自动探测你的服务是否健康可用,并在服务异常时自动重启、摘除或告警。核心思路暴露一个健康检查接口(如 /health、/actuator/health),外部系统定时访问。接口返回服务健康状态(如 200 OK + 简明 JSON)。检查内容可扩展:不仅仅是进程存活,还可以检测数据库、缓存、外部依赖、磁盘空间等。在NestJS 项目中,健康检查(Health Check)模块。

Bruce__taotao的博客 507

sequelize多数据源

config.sequelize = { datasources: [ { delegate: 'model', // 加载所有的模型到 app.model and ctx.model baseDir: 'model', // 要加载的模型目录`app/model/*.js` database: 'db', dialect: 'mysql', host: 'ip', port: 'port',

sxm666666的博客 493

使用Sequelize连接数据库

Sequelize.js是一款针对nodejs的ORM框架。 使用nodejs连接过数据库的人肯定对数据库不陌生了。如果是直接链接,需要自己建立并管理连接,还需要手动编写sql语句。简单的项目到是无所谓,可是一旦项目设计的东西比较复杂,表比较多的时候整个sql的编写就非常的消耗精力。 在Java、c#等语言中已经有轻量的数据库框架或者解决方案了。在nodejs中我推荐Sequelize。它是一个很...

weixin_33895016的博客 1454

NestJS Sequelize 模块简介

NestJS Sequelize 模块简介 Sequelize 是一个流行的 Node.js ORM(对象关系映射)库,它允许开发者以一种简单、直观的方式来处理数据库操作。NestJS Sequelizer 是一个为 NestJS 框架设计的 Sequelize 集成模块,它让开发者能够更加便捷地在 NestJS 应用中使用 Sequelize 功能。 1. 项目基础介绍与主要编程语言 NestJ...

gitblog_00545的博客 1045

NodeJS全栈开发面试题讲解——P10微服务架构(Node.js + 多服务协作)

编号关键知识点核心工具/关键词10.1单体 vs 微服务模块拆分、独立部署10.2通信方式10.3注册与发现10.4分布式事务TCC / SAGA / 事务消息10.5鉴权方案10.6解耦策略OpenAPI / 事件驱动 / BFF10.7熔断限流降级10.8服务监控10.9项目结构与配置管理10.10NestJS 微服务。

Theoweb3|优快云 wwh1st|GitHub theoweb3|TG theo_liu|X theoweb33|gmail wwh9th 华语区Web3基础设施建设者;Web3开源社区共建者;博客沉淀去中心化等各类工程经验。 1433

一个产品要有一个“好底子”:Nest项目搭建

早早集市诞生的背景和设定,以及如何从零搭建一个Nest项目

Gnak75的博客 1355

nestjs官网推荐typeorm而不是prisma的原因

在NestJS官方推荐中,TypeORM更受青睐而非Prisma,主要基于。

988
上一篇: Nestjs框架: Nestjs 复杂企业应用场景架构设计分析
下一篇: Nestjs框架: 集成 Prisma
Wang's Blog
博客等级 码龄12年 7438粉丝 2421原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Wang's Blog

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值