首页 > 解决方案 > 为我的服务器设置数据库时要走哪条路

问题描述

我正在开发一个 websocket 实时浏览器游戏(socketio nodejs)并想开始实现我的数据库,并想知道哪种类型的数据库(nosql、sql ..)最适合我的情况。

我打算如何使用它的一个小描述:

所以基本上我有一些需要大量快速和并发访问的表,这些表需要经常更新和删除,有些不需要它并且有很多永久数据。

我正在考虑使用 mongodb,但老实说,我不想承诺我没有经验的事情(我确实有 sql 知识)。我需要建议谢谢

标签: javascriptnode.jsdatabaseserversocket.io

解决方案


TD;LR:我个人会选择 PostgreSQL。

最近,我和你有同样的问题,但唯一不同的是,我并不想建造游戏室。经过一番研究,我确信 PostgreSQL 很棒,适合每个项目。嗯,科技巨头也在使用它,包括 Facebook、Uber、Netflix ......(https://stackshare.io/postgresql)。它是可扩展的,易于设置一个数据库,拥有大量教程(包括视频和文章)的优秀社区,而且它也是可扩展的,因为它支持 JSON,这很棒!

您可以为 Node.js 使用出色的 ORM,例如 TypeORM 或 Sequelize。此外,我建议您看看 GraphQL,这是一个具有订阅(实时操作)的 API。我猜这将是一个 Web 应用程序,我强烈建议您使用 React.js 来实现前端功能,它与 GraphQL 和 Node.js 的交互非常好。最后但同样重要的是,许多开发人员和公司同时使用 MongoDB 和 PostgreSQL 来实现不同的功能和目的。对于用户的表使用 PostgreSQL,对于多个“大”JSON 对象使用 MongoDB。

我希望这会有所帮助,并让您以更清晰的方式了解您想要什么。祝你的项目好运!


推荐阅读