我可以在Heroku上使用基于文件的数据库吗? [英] Can I use a file based database on Heroku?
问题描述
我有一个小的Node.js/Express应用程序部署到Heroku.
I have a small Node.js / Express app deployed to Heroku.
我想使用像 NeDB 这样的轻量级数据库来保存一些数据.如果我使用这种方法,是否可以定期从Heroku备份/复制文件?
I'd like to use a lightweight database like NeDB to persist some data. Is it possible to periodically backup / copy a file from Heroku if I used this approach?
推荐答案
File-based databases aren't a good fit for Heroku due to its ephemeral filesystem (bold added):
每个dyno都有自己的临时文件系统,其中包含最新部署的代码的新副本.在dyno的生命周期中,其运行的进程可以将文件系统用作临时暂存器,但是任何其他dyno中的进程都看不到已写入的文件,并且在dyno停止或重新启动后,任何写入的文件都将被丢弃.例如,在由于应用程序部署而更换测功机的任何时候都会发生这种情况,并且在正常测功机管理的一部分中大约每天一次.
根据您的用例,我建议使用客户端服务器数据库(在这里看起来很合适)或类似
Depending on your use case I recommend using a client-server database (this looks like a good fit here) or something like Amazon S3 for file storage.
这篇关于我可以在Heroku上使用基于文件的数据库吗?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!