我可以在Heroku上使用基于文件的数据库吗?

时间:2018-05-19 01:46:54

标签: node.js express heroku nedb

我有一个部署到Heroku的小型Node.js / Express应用程序。

我想使用像NeDB这样的轻量级数据库来保存一些数据。如果我使用这种方法,是否可以定期从Heroku备份/复制文件?

1 个答案:

答案 0 :(得分:1)

基于文件的数据库不适合Heroku,因为ephemeral filesystem(加粗):

  

每个dyno都有自己的短暂文件系统,并带有最近部署代码的全新副本。在dyno的生命周期中,其运行进程可以将文件系统用作临时暂存器,但是任何其他dyno中的进程都不会看到所写的文件,并且在dyno停止或重新启动时,任何写入的文件都将被丢弃。例如,每次因应用程序部署而更换dyno时都会发生这种情况,并且大约每天一次作为正常dyno管理的一部分。

根据您的使用情况,我建议使用客户端 - 服务器数据库(这看起来很合适)或类似Amazon S3 for file storage