在Heroku上用Node读取,写入和存储JSON

我正在构build一个基于在Heroku上运行的Node.js的应用程序。

该应用程序使用目前正在与应用程序的其余部分推送的JSON文件,我们正在阅读和写入,如下所示:

var channelsList = require("./JSON/channels.json"); ... fs.writeFile("JSON/channels.json", JSON.stringify(channelsList), onCleaned); 

这对于原型来说现在已经奏效了,但是我知道我们需要使用数据存储,或者当Dyno的睡眠或者推送改变时,这些改变不会持续。

我已经读过,与Mongolabsbuild立一个数据库可能是一个不错的select,但我想知道是否有其他select,因为这似乎可能比必要更复杂。 对我来说这是一个新的领域,所以如果Mongo是要走的路,指针也将会被赞赏。

我们还希望为每周的每一天写入新的文件作为备份。

干杯。

披露:我是Heroku的node.js平台所有者。

你将需要把你的应用程序的状态。 为了replace节点应用中的JSON文件,你应该看看mongo,s3和redis:

  • mongo :function丰富,速度合理
  • s3 :最好映射到“文件系统”存储的抽象(注意权限)
  • redis :简单而快速

就个人而言,我更喜欢redis的简单用例(这听起来像你的资格)。 你可以转储JSON并parsing出来。 另外,节点最常用的redis客户端为简单的哈希提供了一个友好的界面:

https://github.com/mranney/node_redis#friendlier-hash-commands

Redis,mongo,s3: