最近我一直在玩Node.有一点.在我的特殊情况下,我最终使用了MongoDB,部分原因是它对该项目有意义,因为它非常简单,部分原因是Mongoose似乎是一种非常简单的入门方式.

我注意到,在使用Node时,似乎对关系数据库有一定程度的反感.js.与 node 内的非关系型数据库相比,它们似乎没有得到很好的支持.js生态系统,但我似乎找不到一个简洁的理由.

所以,我的问题是,is there a solid technical reason why relational databases are a poorer fit for working with Node.js than alternatives such as MongoDB?

编辑:我只想澄清几件事:

  • 我并不是在寻找与我正在构建的特定应用程序相关的细节
  • 我也不是在寻找非技术原因(例如,我不是在寻找"Node和MongoDB都是新的,所以开发人员一起使用它们"这样的答案)

我所寻找的完全是技术原因,只是.例如,如果关系数据库在与 node 一起使用时表现异常糟糕,有什么技术原因的话.js,那么这就是我在寻找的东西(注意,从目前的答案来看,情况似乎并非如此)

推荐答案

不,这不是技术原因.这主要是观点和NoSQL与Node的结合.js目前是一种流行的 Select .

当然, node 的生态系统是largely community-driven.Node's core API之外的一切都需要社区参与.当然,人们将更有可能支持符合他们个人喜好的东西.

但是,许多人仍然使用和支持带有 node 的关系数据库.js.一些值得注意的项目包括:

Node.js相关问答推荐

使用Google Cloud控制台时,onCall方法在云功能中失败

Express 4.18正文解析

未显示NPM版本

Mongoose:如何使用填充进行查找

几个 lambda 共有的函数

无法截取页面截图

找不到react 模块:错误:默认条件应该是最后一个

将代码转换为 ES6 Discord.js 的问题

Axios 响应循环通过函数只返回第一个映射对象的结果

try 在 NodeJS 项目中实现 SimplePay (OTP) 支付网关,但我无法获得与技术文档中相同的签名

nvm / node / npm: node 12 的 npm 比 node 14 的更新?

Mongodb聚合传递一个匹配的数组和一个不匹配的数组

使用 $in 查询时,如何获取 mongoDB 中每个唯一 ID 的 n 个文档?

Mongodb v4.0 Transaction, MongoError: Transaction numbers are allowed on a replica set member or mongos

node/express:使用 Forever 连续运行脚本时设置 NODE_ENV

错误:大多数中间件(如 bodyParser)不再与 Express Bundle

编写可维护的事件驱动代码

Node.js -Firebase 服务帐户私钥不会解析

Node.js 与 .net 中的异步/等待

未在 Windows 8.1 上构建的 node 包 - 缺少 Microsoft.Cpp.Default.props