Heroku 上的 NedB 不保留 db 文件

Mah*_*loo 4 database heroku node.js nedb

我在我的 nodejs 应用程序中使用了 nedb,我的第一个代码是:

var Datastore = require('nedb');
var db = new Datastore({ filename: 'users.db', autoload: true });
db.persistence.setAutocompactionInterval(5);
Run Code Online (Sandbox Code Playgroud)

本地主机一切正常,数据库将在我的 db 文件中保存每一个厚。(服务器重启后保存的数据库)但在heroku服务器中,数据库为空!!!我认为数据库保存在内存中!(不在我的数据库文件中!!)为什么?!我想将我的数据库保存在 Heroku 服务器的 db 文件中!

gwc*_*des 6

Heroku dynos 有一个临时文件系统,所以你不应该试图在那里保存你的数据库。从文档:

在 dyno 的生命周期内,其正在运行的进程可以使用文件系统作为临时暂存器,但任何其他 dyno 中的进程都看不到写入的文件,并且在 dyno 停止或重新启动时,写入的任何文件都将被丢弃。

您将有更好的时间添加 MongoDB 插件并改为写入。