我使用nodejs,expressjs和socket.io编写了一个聊天应用程序。 因此,当我使用MYSQL数据库时,应用程序变慢,然后我将其替换为使用JSON对象存储数据(在nodejs的服务器端)。
现在一切正常,应用程序运行良好,但如果我想发布nodejs的更新' app.js
文件应该重新启动,因此,JSON对象中的所有内容都将被删除!
如何解决此问题?我可以存储在JSON文件中来修复它吗?申请会保持同样的速度还是什么?
答案 0 :(得分:2)
将数据存储在RAM中总是比写入数据库更快,但在您的情况下需要将其保留在某处。
此问题有很多解决方案,但如果您使用的是JSON,我建议您查看mongodb
数据库。
MongoDb支持多个存储引擎,但您感兴趣的是in memory
。
一个有趣的架构可以是以下replica set配置:
in-memory
存储引擎in-memory
存储引擎wiredtiger
存储引擎的辅助节点。通过存储在RAM中,您将获得速度的好处,并且它将保留在数据库中。
更简单的可能性是使用密钥库db,如redis
。更容易配置。