我认为标题说明了一切。但我想进一步解释。
假设我有一个正在运行的 nodejs 服务器,其中包含一个变量,该变量将包含(几乎)服务器将存储的所有数据。如果我想重新启动服务器(由于某些原因),我如何备份变量以便安全地关闭 nodejs 服务器,并在我关闭它时使用包含数据的变量重新启动它?
问候, JoshuaLangit123
我认为标题说明了一切。但我想进一步解释。
假设我有一个正在运行的 nodejs 服务器,其中包含一个变量,该变量将包含(几乎)服务器将存储的所有数据。如果我想重新启动服务器(由于某些原因),我如何备份变量以便安全地关闭 nodejs 服务器,并在我关闭它时使用包含数据的变量重新启动它?
问候, JoshuaLangit123
这是一些伪代码来实现您想要做的事情:
在启动时,读取 data.json 并将其值分配给您的单个数据变量:
var data = JSON.parse(fs.readFileSync('data.json'));
当应用程序使用 Ctrl-C 关闭时,您可以使用此处理程序将单个数据变量写回 data.json。
process.on( 'SIGINT', function() {
fs.writeFileSync('data.json', JSON.stringify(data));
process.exit();
})
这取决于很多事情。通常您所做的是使用数据库(mongodb、mysql 等)来存储应用程序状态。用户、会话等
如果您确实想将所有变量转储到可以读取/写入的文件中(我认为这听起来是一个非常非常非常糟糕的主意,但除非我知道您在做什么,否则很难确定)您可以创建一个对象,您可以将所有变量放入其中,您可以将其 json-ify 并写入磁盘。
然后在再次启动节点实例时再次读取该文件(或什至需要它)。